signal processing
Sponsored Links
Sponsored Links
Secleted [ 0 ] software to compare
Results 1 - 15 of about 2996
Scilab Image Processing Toolbox 0.4.0
Scilab Image Processing Toolbox is an imaging, computer vision, and shape analysis package for SciLab. more>> <<less
Download (3.9MB)
Added: 2006-04-15 License: GPL (GNU General Public License) Price:
1321 downloads
JSignal 0.2
JSignal is a loose port of the signal system implemented by GTKs GLib. more>>
JSignal is a loose port of the signal system implemented by GTKs GLib. JSignal project uses signals and handlers to allow for the registration of callback functions to events.
To use JSignal those classes which will emit signals (cause events) must register the signals that each class will emit. Note that if a class extends another class (has a superclass) it will inherit any signals registered by the parent class and can emit those signals as well. In addition a new global-type of signal can be registered which is class non-specific. Any class can emit a global signal.
After you have a class with registered signals you can begin connecting callback functions to those signals. Callback functions are connected (registered to listen for) to signals by specifying the signal and the object instance that will emit that signal; this registration results in the creation of a handler.
Multiple handlers can be configured for the same signal on the same object instance. In addition to instance-specific signal handlers a handler can also be registered to execute when a global signal (created using j_signal_new_global) is emitted; again, regardless of emitting instance. Note that when a global signal is emitted by an instance those handlers that are registered globally (using j_signal_handler_connect_global) will be executed BEFORE any instance-specific handlers.
To emit a signal - thus causing an event - the class which registered the signal should use the j_signal_emit function and pass any additional information to the callback function via the event detail argument. This detail object should be an array of name => value pairs.
Illustrative examples are provided below.
Note: In order for signal inheritance to work properly it is recommended that a classs prototype be given a parent member which points to the constructor of the classs superclass.
Main features:
- Multiple Handlers per Event
Multiple callback functions can be registered per signal per object instance.
- Signal Inheritance
The signals registered by an objects superclass are inherited by any extending child classes.
- Ordered Handler Execution
Like the DOM event handling system all handlers set to fire in response to a particular event fire in the order they were registered.
- Chained Handler Execution
Also like the DOM event handling model, when a handler returns a value of false any subsequent handlers will NOT be executed.
- Temporary Handler Blocking
Handlers can have blocks placed against them cumulatively; allowing for the selectively temporary disabling of handlers.
- Global Signals
Signals (as used in GLib) are class-specific. A signal registered under the class type of Integer can only be emitted by Integer instances. A global signal (registered using j_signal_new_global) can be emitted by any and all instances regardless of their class. This is essentially equivelant to registering a signal using the Javascript Object class type.
- Global Handlers
As signals are traditionally class specific it follows that handlers are instance specific. However global signals can be handled by both instance-specific handlers AND global handlers. A global handler is executed whenever a global signal is emitted, regardless of the emitting instance and its class type. Note that global handlers are executed BEFORE instance-specific handlers.
<<lessTo use JSignal those classes which will emit signals (cause events) must register the signals that each class will emit. Note that if a class extends another class (has a superclass) it will inherit any signals registered by the parent class and can emit those signals as well. In addition a new global-type of signal can be registered which is class non-specific. Any class can emit a global signal.
After you have a class with registered signals you can begin connecting callback functions to those signals. Callback functions are connected (registered to listen for) to signals by specifying the signal and the object instance that will emit that signal; this registration results in the creation of a handler.
Multiple handlers can be configured for the same signal on the same object instance. In addition to instance-specific signal handlers a handler can also be registered to execute when a global signal (created using j_signal_new_global) is emitted; again, regardless of emitting instance. Note that when a global signal is emitted by an instance those handlers that are registered globally (using j_signal_handler_connect_global) will be executed BEFORE any instance-specific handlers.
To emit a signal - thus causing an event - the class which registered the signal should use the j_signal_emit function and pass any additional information to the callback function via the event detail argument. This detail object should be an array of name => value pairs.
Illustrative examples are provided below.
Note: In order for signal inheritance to work properly it is recommended that a classs prototype be given a parent member which points to the constructor of the classs superclass.
Main features:
- Multiple Handlers per Event
Multiple callback functions can be registered per signal per object instance.
- Signal Inheritance
The signals registered by an objects superclass are inherited by any extending child classes.
- Ordered Handler Execution
Like the DOM event handling system all handlers set to fire in response to a particular event fire in the order they were registered.
- Chained Handler Execution
Also like the DOM event handling model, when a handler returns a value of false any subsequent handlers will NOT be executed.
- Temporary Handler Blocking
Handlers can have blocks placed against them cumulatively; allowing for the selectively temporary disabling of handlers.
- Global Signals
Signals (as used in GLib) are class-specific. A signal registered under the class type of Integer can only be emitted by Integer instances. A global signal (registered using j_signal_new_global) can be emitted by any and all instances regardless of their class. This is essentially equivelant to registering a signal using the Javascript Object class type.
- Global Handlers
As signals are traditionally class specific it follows that handlers are instance specific. However global signals can be handled by both instance-specific handlers AND global handlers. A global handler is executed whenever a global signal is emitted, regardless of the emitting instance and its class type. Note that global handlers are executed BEFORE instance-specific handlers.
Download (0.028MB)
Added: 2006-03-27 License: GPL (GNU General Public License) Price:
1306 downloads
Process Raw Images 0.2
Process Raw Images is a service menu for processing many raw images at once. Supports output to Jpeg, Png and Tiff. more>>
Process Raw Images is a service menu for processing many raw images at once. Supports output to Jpeg, Png and Tiff.
<<less Download (0.006MB)
Added: 2007-02-05 License: GPL (GNU General Public License) Price:
996 downloads
SoundTouch Sound Processing Library 1.3.0
SoundTouch Sound Processing Library is an open-source audio processing library. more>>
SoundTouch Sound Processing Library is an open-source audio processing library for changing the Tempo, Pitch and Playback Rates of audio streams or files:
- Tempo (time-stretch): Changes the sound to play at faster or slower speed than original, without affecting the sound pitch.
- Pitch (key) : Changes the sound pitch or key, without affecting the sound tempo or speed.
- Playback Rate : Changes both the sound tempo and pitch, as if an LP disc was played at wrong RPM rate.
Main features:
- Easy-to-use implementation of time-stretch, pitch-shift and sample rate transposing routines.
- High-performance object-oriented C++ implementation.
- Full source codes available for both the SoundTouch library and the example application.
- Clear and easy-to-use programming interface via a single C++ class.
- Supported audio data format : 16Bit integer or 32bit floating point PCM mono/stereo
- Capable of real-time audio stream processing:
- input/output latency max. ~ 100 ms.
- Processing 44.1kHz/16bit stereo sound in realtime requires a 133 Mhz Intel Pentium processor or better.
- Platform-independent implementation: The SoundTouch library can be compiled for any processor and OS platform supporting GNU C compiler (gcc) or Visual Studio, for example Win32, Linux, AIX.
- Additional assembler-level and Intel-MMX instruction set optimizations for Intel x86 compatible processors (Win32 & Linux platforms), offering several times increase in the processing performance.
- Compiled executable binaries available for Windows.
Enhancements:
- Add features/limitations/changes here
<<less- Tempo (time-stretch): Changes the sound to play at faster or slower speed than original, without affecting the sound pitch.
- Pitch (key) : Changes the sound pitch or key, without affecting the sound tempo or speed.
- Playback Rate : Changes both the sound tempo and pitch, as if an LP disc was played at wrong RPM rate.
Main features:
- Easy-to-use implementation of time-stretch, pitch-shift and sample rate transposing routines.
- High-performance object-oriented C++ implementation.
- Full source codes available for both the SoundTouch library and the example application.
- Clear and easy-to-use programming interface via a single C++ class.
- Supported audio data format : 16Bit integer or 32bit floating point PCM mono/stereo
- Capable of real-time audio stream processing:
- input/output latency max. ~ 100 ms.
- Processing 44.1kHz/16bit stereo sound in realtime requires a 133 Mhz Intel Pentium processor or better.
- Platform-independent implementation: The SoundTouch library can be compiled for any processor and OS platform supporting GNU C compiler (gcc) or Visual Studio, for example Win32, Linux, AIX.
- Additional assembler-level and Intel-MMX instruction set optimizations for Intel x86 compatible processors (Win32 & Linux platforms), offering several times increase in the processing performance.
- Compiled executable binaries available for Windows.
Enhancements:
- Add features/limitations/changes here
Download (0.42MB)
Added: 2006-02-15 License: GPL (GNU General Public License) Price:
1354 downloads
Workorder Processing System 0.3.0
Workorder Processing System allows you to quickly set up a work order/ticket tracking system for most service related businesses more>>
Workorder Processing System allows you to quickly set up a work order/ticket tracking system for most service related businesses.
Workorder Processing System is capable of handling multiple branches, which allows all branches to run from one central server connected to the Internet.
Main features:
- Multi branch capable with central server
- Customer address database
- Customer work history
- Searchable ticket database
- Business appointment scheduler
<<lessWorkorder Processing System is capable of handling multiple branches, which allows all branches to run from one central server connected to the Internet.
Main features:
- Multi branch capable with central server
- Customer address database
- Customer work history
- Searchable ticket database
- Business appointment scheduler
Download (0.21MB)
Added: 2007-04-16 License: GPL (GNU General Public License) Price:
924 downloads
High Performance Linpack 1.0a
High Performance Linpack is a highly parallel, high performance benchmarking tool. more>>
HPL is a software package that solves a (random) dense linear system in double precision (64 bits) arithmetic on distributed-memory computers. It can thus be regarded as a portable as well as freely available implementation of the High Performance Computing Linpack Benchmark.
The algorithm used by HPL can be summarized by the following keywords: Two-dimensional block-cyclic data distribution - Right-looking variant of the LU factorization with row partial pivoting featuring multiple look-ahead depths - Recursive panel factorization with pivot search and column broadcast combined - Various virtual panel broadcast topologies - bandwidth reducing swap-broadcast algorithm - backward substitution with look-ahead of depth 1.
The HPL package provides a testing and timing program to quantify the accuracy of the obtained solution as well as the time it took to compute it. The best performance achievable by this software on your system depends on a large variety of factors.
Nonetheless, with some restrictive assumptions on the interconnection network, the algorithm described here and its attached implementation are scalable in the sense that their parallel efficiency is maintained constant with respect to the per processor memory usage.
The HPL software package requires the availibility on your system of an implementation of the Message Passing Interface MPI (1.1 compliant). An implementation of either the Basic Linear Algebra Subprograms BLAS or the Vector Signal Image Processing Library VSIPL is also needed. Machine-specific as well as generic implementations of MPI, the BLAS and VSIPL are available for a large variety of systems.
<<lessThe algorithm used by HPL can be summarized by the following keywords: Two-dimensional block-cyclic data distribution - Right-looking variant of the LU factorization with row partial pivoting featuring multiple look-ahead depths - Recursive panel factorization with pivot search and column broadcast combined - Various virtual panel broadcast topologies - bandwidth reducing swap-broadcast algorithm - backward substitution with look-ahead of depth 1.
The HPL package provides a testing and timing program to quantify the accuracy of the obtained solution as well as the time it took to compute it. The best performance achievable by this software on your system depends on a large variety of factors.
Nonetheless, with some restrictive assumptions on the interconnection network, the algorithm described here and its attached implementation are scalable in the sense that their parallel efficiency is maintained constant with respect to the per processor memory usage.
The HPL software package requires the availibility on your system of an implementation of the Message Passing Interface MPI (1.1 compliant). An implementation of either the Basic Linear Algebra Subprograms BLAS or the Vector Signal Image Processing Library VSIPL is also needed. Machine-specific as well as generic implementations of MPI, the BLAS and VSIPL are available for a large variety of systems.
Download (0.50MB)
Added: 2005-04-11 License: BSD License Price:
1682 downloads
Java Parallel Processing Framework 1.0 Beta 1
Java Parallel Processing Framework is a set of tools and APIs to facilitate the parallelization of CPU intensive applications. more>>
Java Parallel Processing Framework is a set of tools and APIs to facilitate the parallelization of CPU intensive applications, and distribute their execution over a network of heterogenous nodes.
Java Parallel Processing Framework is intended to run in clusters and grids.
Main features:
- an API to delegate the processing of parallelized tasks to local and remote execution services
- a set of APIs and user interface tools to administrate and monitor execution services
- real-time adaptive load balancing capabilities
- scalability up to an arbitrary number of processing nodes
- support for failover and recovery
- limited intrusiveness for existing or legacy code
- a dynamic deployment mechanism, that enables the execution of new, or updated, code without having to deploy onto the grid
- fully documented APIs, administration guide and developer guide
- runs on any platform supporting Java 2 Platform Standard Edition 5.0 (J2SE 1.5)
Enhancements:
- JPPF is now licensed under the terms of the Apache License, Version 2.0. Starting from JPPF 1.0 beta1, all releases will be licensed under these terms.
- Prior versions will remain under the terms of the LGPL.
- For the first time, JPPF integrates seamlessly with J2EE. The JPPF Resource Adapter provides J2EE application servers with an access to native grid services.
- Numerous bug fixes, especially with regards to the distributed class loading mechanism.
<<lessJava Parallel Processing Framework is intended to run in clusters and grids.
Main features:
- an API to delegate the processing of parallelized tasks to local and remote execution services
- a set of APIs and user interface tools to administrate and monitor execution services
- real-time adaptive load balancing capabilities
- scalability up to an arbitrary number of processing nodes
- support for failover and recovery
- limited intrusiveness for existing or legacy code
- a dynamic deployment mechanism, that enables the execution of new, or updated, code without having to deploy onto the grid
- fully documented APIs, administration guide and developer guide
- runs on any platform supporting Java 2 Platform Standard Edition 5.0 (J2SE 1.5)
Enhancements:
- JPPF is now licensed under the terms of the Apache License, Version 2.0. Starting from JPPF 1.0 beta1, all releases will be licensed under these terms.
- Prior versions will remain under the terms of the LGPL.
- For the first time, JPPF integrates seamlessly with J2EE. The JPPF Resource Adapter provides J2EE application servers with an access to native grid services.
- Numerous bug fixes, especially with regards to the distributed class loading mechanism.
Download (7.8MB)
Added: 2007-07-31 License: The Apache License 2.0 Price:
816 downloads
SigBrowser 0.4
SigBrowser is a small tool to display large signals (up to 2 GB filesize / 1-6 channels / 16 bit integer). more>>
SigBrowser is a small tool to display large signals (up to 2 GB filesize / 1-6 channels / 16 bit integer).
SigBrowser allows you to smoothly browse in a large signal. It can load 16 bit signed integer data with up to 6 interlaced channels.
Unfortunately theres no large-file support, so the limit is at 2 GB. You cant do much except looking at the signal with various zooming factors.
But if youre searching for certain artefacts in a signal then its probably quite useful for you.
It can visualize large signals with filesizes of up to 2 GB. Currently only 16 bit signed integer signals with up to 8 interlaced channels can be loaded.
Using a P4 @ 1.8 GHz with 512 MB RAM and a GeForce 4 graphics card you can scroll and zoom quite smoothly through the whole signal. On a Sun Ultra 1500 its a bit slower but you can still work fine with it.
By using something which I call block-reduction (BL). BL uses the fact that todays screens only have a limited amount of pixels. That means to display the whole signal at once, the worst case regarding performance restrictions, you would have to display thousands of samples on one pixel coordinate in x (horizontal) direction.
Assuming we plot lines between each pair of following samples the user will see a colored area which borders in vertical direction are the minimum and maximum value of all samples falling on the same x-coordinate.
Using this fact we let the user create a so called signal profile. Besides storing the sampling rate, file format info, number of channels to visualize and similar things its main purpose is to contain min/max pairs each of which calculated from a block of N samples per channel. N gets specified by the user, usually 10..50, depending on signal size and computer beeing used.
By visualizing these min/max blocks instead of the real signal as long as the user doesnt zoom into the signal to much we dont loose any information on the screen. But we get a nice performance boost as the signal profile has a much smaller size (signal_lengh_in_samples / N * 2) than the original signal has. Unfortunately we cant do this anymore when the user zooms into details. Then SigBrowser switches to direct display of the signal but it loads only about 1 MB of the original signal at once, which would result in a width of usually several screens.
Example:
* C = number of channels in origianl signal
* V = number of channels to visualize
* S = original signal length in samples per channel
* B = block size
I have a signal of 1.1 GB, C = V = 8 channels, 16 bit integer samples which in my case contains S = 73298610 samples per channel. Using a block size of B = 10 samples per min/max block (really smooth interaction on a P4 3.2 GHz) you get a signal-profile of S / B * 4 / (1024*1024) = 84 MB which you have to keep in memory.
<<lessSigBrowser allows you to smoothly browse in a large signal. It can load 16 bit signed integer data with up to 6 interlaced channels.
Unfortunately theres no large-file support, so the limit is at 2 GB. You cant do much except looking at the signal with various zooming factors.
But if youre searching for certain artefacts in a signal then its probably quite useful for you.
It can visualize large signals with filesizes of up to 2 GB. Currently only 16 bit signed integer signals with up to 8 interlaced channels can be loaded.
Using a P4 @ 1.8 GHz with 512 MB RAM and a GeForce 4 graphics card you can scroll and zoom quite smoothly through the whole signal. On a Sun Ultra 1500 its a bit slower but you can still work fine with it.
By using something which I call block-reduction (BL). BL uses the fact that todays screens only have a limited amount of pixels. That means to display the whole signal at once, the worst case regarding performance restrictions, you would have to display thousands of samples on one pixel coordinate in x (horizontal) direction.
Assuming we plot lines between each pair of following samples the user will see a colored area which borders in vertical direction are the minimum and maximum value of all samples falling on the same x-coordinate.
Using this fact we let the user create a so called signal profile. Besides storing the sampling rate, file format info, number of channels to visualize and similar things its main purpose is to contain min/max pairs each of which calculated from a block of N samples per channel. N gets specified by the user, usually 10..50, depending on signal size and computer beeing used.
By visualizing these min/max blocks instead of the real signal as long as the user doesnt zoom into the signal to much we dont loose any information on the screen. But we get a nice performance boost as the signal profile has a much smaller size (signal_lengh_in_samples / N * 2) than the original signal has. Unfortunately we cant do this anymore when the user zooms into details. Then SigBrowser switches to direct display of the signal but it loads only about 1 MB of the original signal at once, which would result in a width of usually several screens.
Example:
* C = number of channels in origianl signal
* V = number of channels to visualize
* S = original signal length in samples per channel
* B = block size
I have a signal of 1.1 GB, C = V = 8 channels, 16 bit integer samples which in my case contains S = 73298610 samples per channel. Using a block size of B = 10 samples per min/max block (really smooth interaction on a P4 3.2 GHz) you get a signal-profile of S / B * 4 / (1024*1024) = 84 MB which you have to keep in memory.
Download (0.12MB)
Added: 2005-07-21 License: GPL (GNU General Public License) Price:
1557 downloads
Signs 0.6.3
Signs is a tool for logic synthesis and gate level simulation. more>>
Signs is a tool for logic synthesis and gate level simulation. Signss project main features include synthesis of RTL-style VHDL circuit descriptions and a dynamic graphical netlist viewer.
Supported formats include VHDL, ISCAS, and limited support for BLIF, Verilog, and EDIF netlists. Various true value and fault simulators and a combinational ATPG are included for circuit testing.
Aside from GUI mode, Signs has a pure command line mode and is fully scriptable in JavaScript and Ruby.
Main features:
- Written in Java, therefore platform-independent
- Aims to be VHDL93 compliant, at the moment a VHDL Subset is supported
- (Limited) support for non-synthesizable VHDL code, useful for testbenches
- Synthesis of RTL-style sequential VHDL process descriptions according to IEEE Std 1076.6
- Dynamic graphical netlist viewer supporting annotations (signal/gate names, signal values provided by simulators, faults)
- VHDL netlist output to file
- Input and output of netlists in ISCAS benchmark format
- Gate level true value simulators: event-based (any circuit), bit-parallel (combinational circuits only)
- Fault simulators: PPSFP, simple single faultsim
- Input and output of pattern lists in WGL format
- ATPG for combinational circuits: Implication-Graph based, PODEM
- Limited support for Verilog and EDIF netlists
- Fully scriptable in Rhino: JavaScript for Java and JRuby
- Pure command-line mode available besides GUI mode
- Integrated environment including source code and netlist structure tree views, build system, compilers and editors with syntax highlighting
Enhancements:
- While the release focus is clearly on bugfixes, there are also some feature improvements, such as enhanced test bench support and improved netlist and simulator views.
- The VHDL compiler has support for subprograms now and elaboration of big designs is much faster because of improved context handling.
- Internally, the intermediate representation layer was cleaned up, so intermediate objects form a proper tree now.
<<lessSupported formats include VHDL, ISCAS, and limited support for BLIF, Verilog, and EDIF netlists. Various true value and fault simulators and a combinational ATPG are included for circuit testing.
Aside from GUI mode, Signs has a pure command line mode and is fully scriptable in JavaScript and Ruby.
Main features:
- Written in Java, therefore platform-independent
- Aims to be VHDL93 compliant, at the moment a VHDL Subset is supported
- (Limited) support for non-synthesizable VHDL code, useful for testbenches
- Synthesis of RTL-style sequential VHDL process descriptions according to IEEE Std 1076.6
- Dynamic graphical netlist viewer supporting annotations (signal/gate names, signal values provided by simulators, faults)
- VHDL netlist output to file
- Input and output of netlists in ISCAS benchmark format
- Gate level true value simulators: event-based (any circuit), bit-parallel (combinational circuits only)
- Fault simulators: PPSFP, simple single faultsim
- Input and output of pattern lists in WGL format
- ATPG for combinational circuits: Implication-Graph based, PODEM
- Limited support for Verilog and EDIF netlists
- Fully scriptable in Rhino: JavaScript for Java and JRuby
- Pure command-line mode available besides GUI mode
- Integrated environment including source code and netlist structure tree views, build system, compilers and editors with syntax highlighting
Enhancements:
- While the release focus is clearly on bugfixes, there are also some feature improvements, such as enhanced test bench support and improved netlist and simulator views.
- The VHDL compiler has support for subprograms now and elaboration of big designs is much faster because of improved context handling.
- Internally, the intermediate representation layer was cleaned up, so intermediate objects form a proper tree now.
Download (4.5MB)
Added: 2007-01-10 License: BSD License Price:
600 downloads
ROSInfo 1.13
ROSInfo is a simple tool for monitoring signal levels, traffic, and network latency of x86 machines. more>>
ROSInfo is a simple tool for monitoring signal levels, traffic, and network latency of x86 machines, RouterBoards, and other devices running Mikrotik RouterOS.
The project was designed to be used with Mikrotik RouterOS 2.9 and is being developed and tested on a large network with many Mikrotik routers.
Currently supported and tested are all versions of Mikrotik RouterOS 2.9.
<<lessThe project was designed to be used with Mikrotik RouterOS 2.9 and is being developed and tested on a large network with many Mikrotik routers.
Currently supported and tested are all versions of Mikrotik RouterOS 2.9.
Download (0.074MB)
Added: 2006-12-08 License: GPL (GNU General Public License) Price:
1081 downloads
Valgrind 3.2.3
Valgrind is an award-winning suite of tools for debugging and profiling Linux programs. more>>
Valgrind is an award-winning suite of tools for debugging and profiling Linux programs. With the tools that come with Valgrind, you can automatically detect many memory management and threading bugs, avoiding hours of frustrating bug-hunting, making your programs more stable. You can also perform detailed profiling, to speed up and reduce memory use of your programs.
Valgrind distribution currently includes three tools: a memory error detectors, a cache (time) profiler and a heap (space) profiler.
Valgrind is Open Source / Free Software, and is freely available under the GNU General Public License.
Main features:
- Valgrind will save you hours of debugging time. With Valgrind tools you can automatically detect many memory management and threading bugs. This gives you confidence that your programs are free of many common bugs, some of which would take hours to find manually, or never be found at all. You can find and eliminate bugs before they become a problem.
- Valgrind can help you speed up your programs. With Valgrind tools you can also perform very detailed profiling to help speed up your programs.
- Valgrind is free. Free-as-in-speech: you can download it, read the source code, make modifications, and pass them on, all within the limits of the GNU GPL. And free-as-in-beer: we arent charging for it.
- Valgrind runs on x86/Linux, AMD64/Linux and PPC32/Linux, several of the most popular platforms in use. Valgrind works with all the major Linux distributions, including Red Hat, SuSE, Debian, Gentoo, Slackware, Mandrake, etc.
- Valgrind is easy to use. Valgrind uses dynamic binary translation, so you dont need to modify, recompile or relink your applications. Just prefix your command line with valgrind and everything works.
- Valgrind is not a toy. Valgrind is first and foremost a debugging and profiling system for large, complex programs. We have had feedback from users working on projects with up to 25 million lines of code. It has been used on projects of all sizes, from single-user personal projects, to projects with hundreds of programmers.
- Valgrind is suitable for any type of software. Valgrind has been used on almost every kind of software imaginable: desktop applications, libraries, databases, games, web browsers, network servers, distributed control systems, virtual reality frameworks, transaction servers, compilers, interpreters, virtual machines, telecom applications, embedded software, medical imaging, scientific programming, signal processing, video/audio programs, NASA Mars lander vision and rover navigation systems, business intelligence software, financial/banking software, operating system daemons, etc, etc. See a list of projects using Valgrind.
- Valgrind is widely used. Valgrind has been used by thousands of programmers across the world. We have received feedback from users in over 25 countries, including: Belgium, Czech Republic, Denmark, Finland, France, Germany, Greece, Hungary, Italy, The Netherlands, Norway, Poland, Portugal, Russia, Sweden, Switzerland, UK, Argentina, Brazil, Canada, USA, Australia, India, Japan, New Zealand, Singapore, South Africa and Israel.
- Valgrind works with programs written in any language. Because Valgrind works directly with program binaries, it works with programs written in any programming language, be they compiled, just-in-time compiled, or interpreted. The Valgrind tools are largely aimed at programs written in C and C++, because programs written in these languages tend to have the most bugs! But it can, for example, be used to debug and profile systems written in a mixture of languages. Valgrind has been used on programs written partly or entirely in C, C++, Java, Perl, Python, assembly code, Fortran, Ada, and many others.
- Valgrind debugs and profiles your entire program. Unlike tools that require a recompilation step, Valgrind gives you total debugging and profiling coverage of every instruction executed by your program, even within system libraries. You can even use Valgrind on programs for which you dont have the source code.
- Valgrind can be used with other tools. Valgrind can start GDB and attach it to your program at the point(s) where errors are detected, so that you can poke around and figure out what was going on at the time.
- Valgrind is extensible. Valgrind consists of the Valgrind core, which provides a synthetic software CPU, and Valgrind tools, which plug into the core, and instrument and analyse the running program. Anyone can write powerful new tools that add arbitrary instrumentation to programs. This is much easier than writing such tools from scratch. This makes Valgrind ideal for experimenting with new kinds of debuggers, profilers, and similar tools.
- Valgrind is actively maintained. The Valgrind developers are constantly working to fix bugs, improve Valgrind, and ensure it works as new Linux distributions and libraries come out. There are also mailing lists you can subscribe to, and contact if youre having problems.
- So whats the catch? The main one is that programs run significantly more slowly under Valgrind. Depending on which tool you use, the slowdown factor can range from 5--100. This slowdown is similar to that of similar debugging and profiling tools. But since you dont have to use Valgrind all the time, this usually isnt too much of a problem. The hours youll save debugging will more than make up for it.
Enhancements:
- 3.2.3 is almost identical to 3.2.2, but fixes a regression that unfortunately crept into 3.2.2. The regression causes an assertion failure in Valgrind when running certain obscure SSE code fragments on x86-linux and amd64-linux. Please do not use (or package) 3.2.2; instead use 3.2.3.
<<lessValgrind distribution currently includes three tools: a memory error detectors, a cache (time) profiler and a heap (space) profiler.
Valgrind is Open Source / Free Software, and is freely available under the GNU General Public License.
Main features:
- Valgrind will save you hours of debugging time. With Valgrind tools you can automatically detect many memory management and threading bugs. This gives you confidence that your programs are free of many common bugs, some of which would take hours to find manually, or never be found at all. You can find and eliminate bugs before they become a problem.
- Valgrind can help you speed up your programs. With Valgrind tools you can also perform very detailed profiling to help speed up your programs.
- Valgrind is free. Free-as-in-speech: you can download it, read the source code, make modifications, and pass them on, all within the limits of the GNU GPL. And free-as-in-beer: we arent charging for it.
- Valgrind runs on x86/Linux, AMD64/Linux and PPC32/Linux, several of the most popular platforms in use. Valgrind works with all the major Linux distributions, including Red Hat, SuSE, Debian, Gentoo, Slackware, Mandrake, etc.
- Valgrind is easy to use. Valgrind uses dynamic binary translation, so you dont need to modify, recompile or relink your applications. Just prefix your command line with valgrind and everything works.
- Valgrind is not a toy. Valgrind is first and foremost a debugging and profiling system for large, complex programs. We have had feedback from users working on projects with up to 25 million lines of code. It has been used on projects of all sizes, from single-user personal projects, to projects with hundreds of programmers.
- Valgrind is suitable for any type of software. Valgrind has been used on almost every kind of software imaginable: desktop applications, libraries, databases, games, web browsers, network servers, distributed control systems, virtual reality frameworks, transaction servers, compilers, interpreters, virtual machines, telecom applications, embedded software, medical imaging, scientific programming, signal processing, video/audio programs, NASA Mars lander vision and rover navigation systems, business intelligence software, financial/banking software, operating system daemons, etc, etc. See a list of projects using Valgrind.
- Valgrind is widely used. Valgrind has been used by thousands of programmers across the world. We have received feedback from users in over 25 countries, including: Belgium, Czech Republic, Denmark, Finland, France, Germany, Greece, Hungary, Italy, The Netherlands, Norway, Poland, Portugal, Russia, Sweden, Switzerland, UK, Argentina, Brazil, Canada, USA, Australia, India, Japan, New Zealand, Singapore, South Africa and Israel.
- Valgrind works with programs written in any language. Because Valgrind works directly with program binaries, it works with programs written in any programming language, be they compiled, just-in-time compiled, or interpreted. The Valgrind tools are largely aimed at programs written in C and C++, because programs written in these languages tend to have the most bugs! But it can, for example, be used to debug and profile systems written in a mixture of languages. Valgrind has been used on programs written partly or entirely in C, C++, Java, Perl, Python, assembly code, Fortran, Ada, and many others.
- Valgrind debugs and profiles your entire program. Unlike tools that require a recompilation step, Valgrind gives you total debugging and profiling coverage of every instruction executed by your program, even within system libraries. You can even use Valgrind on programs for which you dont have the source code.
- Valgrind can be used with other tools. Valgrind can start GDB and attach it to your program at the point(s) where errors are detected, so that you can poke around and figure out what was going on at the time.
- Valgrind is extensible. Valgrind consists of the Valgrind core, which provides a synthetic software CPU, and Valgrind tools, which plug into the core, and instrument and analyse the running program. Anyone can write powerful new tools that add arbitrary instrumentation to programs. This is much easier than writing such tools from scratch. This makes Valgrind ideal for experimenting with new kinds of debuggers, profilers, and similar tools.
- Valgrind is actively maintained. The Valgrind developers are constantly working to fix bugs, improve Valgrind, and ensure it works as new Linux distributions and libraries come out. There are also mailing lists you can subscribe to, and contact if youre having problems.
- So whats the catch? The main one is that programs run significantly more slowly under Valgrind. Depending on which tool you use, the slowdown factor can range from 5--100. This slowdown is similar to that of similar debugging and profiling tools. But since you dont have to use Valgrind all the time, this usually isnt too much of a problem. The hours youll save debugging will more than make up for it.
Enhancements:
- 3.2.3 is almost identical to 3.2.2, but fixes a regression that unfortunately crept into 3.2.2. The regression causes an assertion failure in Valgrind when running certain obscure SSE code fragments on x86-linux and amd64-linux. Please do not use (or package) 3.2.2; instead use 3.2.3.
Download (3.9MB)
Added: 2007-05-02 License: GPL (GNU General Public License) Price:
909 downloads
skill and snice 4.1.4
skill sends signals to processes given any combination of user names, ttys and snice changes the priority of processes. more>>
skill sends signals to processes given any combination of user names, ttys, commands, and pids and snice changes the priority of processes (given the same).
They are similar to kill(1) and renice(8), but the commandline is order-independent. There are also verbose, search, and interactive modes of operation.
Both programs run under a variety of operating systems, including:
Apple Darwin 5.4
AT&T SysVR4, SysVR4.2, SysVR4.2MP
4.2BSD, 4.3BSD, 4.4BSD (and many PC variants)
Cygwin 1.5 (uses Linux)
Mach 2.6, 3.0
DEC Ultrix 2.2, 4.1-2
DEC AXP OSF/1
DEC/Compaq Tru64 Unix V3.2D-2, T3.2F-1, V4.0, V5.0-1B
Encore UMAX 4.2
FreeBSD 2.0-2, 3.1, 4.4-11, 5.0-3, 6.0-1
HP-UX 6.5, 7.0, 8.0, 9.0-5, 10.1-20, 11.0-23
IBM AIX 3.1-2, 4.1, 5.2
IBM AOS 4.3
Linux 1.0-2, 2.1, 2.2, 2.4
MIPS UMIPS 2.1
NeXT OS 1.0, 2.1
NetBSD 1.3-5
OpenBSD 2.6, 3.0
Pyramid OSx 4.0
SCO UnixWare 7.0.1
SGI Irix 3.3, 4.0, 5.2, 5.3, 6.2, 6.5
Sequent Dynix 3.0-1
SunOS 2, 3, 4.0-1, 5.1-10
Enhancements:
- skill and snice now act on each process only once (for systems like BSD that return the same Process ID multiple times, once for each instantiated thread).
- Support has also been added for FreeBSD 6.2 and HP-UX 11.31.
<<lessThey are similar to kill(1) and renice(8), but the commandline is order-independent. There are also verbose, search, and interactive modes of operation.
Both programs run under a variety of operating systems, including:
Apple Darwin 5.4
AT&T SysVR4, SysVR4.2, SysVR4.2MP
4.2BSD, 4.3BSD, 4.4BSD (and many PC variants)
Cygwin 1.5 (uses Linux)
Mach 2.6, 3.0
DEC Ultrix 2.2, 4.1-2
DEC AXP OSF/1
DEC/Compaq Tru64 Unix V3.2D-2, T3.2F-1, V4.0, V5.0-1B
Encore UMAX 4.2
FreeBSD 2.0-2, 3.1, 4.4-11, 5.0-3, 6.0-1
HP-UX 6.5, 7.0, 8.0, 9.0-5, 10.1-20, 11.0-23
IBM AIX 3.1-2, 4.1, 5.2
IBM AOS 4.3
Linux 1.0-2, 2.1, 2.2, 2.4
MIPS UMIPS 2.1
NeXT OS 1.0, 2.1
NetBSD 1.3-5
OpenBSD 2.6, 3.0
Pyramid OSx 4.0
SCO UnixWare 7.0.1
SGI Irix 3.3, 4.0, 5.2, 5.3, 6.2, 6.5
Sequent Dynix 3.0-1
SunOS 2, 3, 4.0-1, 5.1-10
Enhancements:
- skill and snice now act on each process only once (for systems like BSD that return the same Process ID multiple times, once for each instantiated thread).
- Support has also been added for FreeBSD 6.2 and HP-UX 11.31.
Download (0.045MB)
Added: 2007-05-05 License: BSD License Price:
906 downloads
POE::Exceptions 0.0502
POE::Exceptions is a POE class for handling exceptions. more>>
POE::Exceptions is a POE class for handling exceptions.
SYNOPSIS
use POE::Exceptions;
POE::Session::Exception->create(
inline_states => {
_start => sub { print START;
$_[KERNEL]->sig(DIE,death_handled);
},
death_handled => sub { print EXCEPTION CAUGHT
$_[KERNEL]->sig_handled();
},
_stop => { print END }
}
);
$poe_kernel->run();
DEPRECATION
This module is deprecated as its functionality has been rolled into the POE core, as of POE 0.33. This module will receive no updates and will be removed from CPAN at some point in the near future.
DISCUSSION
POE::Exceptions extends POE to catch exceptions neatly. A new signal, DIE, is introduced. This signal will be fired every time an exception occurs. (For those of you new to the term exception, an exception is whenever the code decides to bail out by dieing.) If the signal handler returns 1 (as in the example above), POE will assume that the handler dealt with the signal appropriately. If the signal handler returns 0, POE will assume that the handler does not want to deal with the signal and POE will propgate the exception as if the handler never existed.
Caveat: POE::Exceptions will die on its own in the case of a double exception fault. If the DIE signal handler itself throws an exception, POE::Exceptions will shut the program down and bail out.
<<lessSYNOPSIS
use POE::Exceptions;
POE::Session::Exception->create(
inline_states => {
_start => sub { print START;
$_[KERNEL]->sig(DIE,death_handled);
},
death_handled => sub { print EXCEPTION CAUGHT
$_[KERNEL]->sig_handled();
},
_stop => { print END }
}
);
$poe_kernel->run();
DEPRECATION
This module is deprecated as its functionality has been rolled into the POE core, as of POE 0.33. This module will receive no updates and will be removed from CPAN at some point in the near future.
DISCUSSION
POE::Exceptions extends POE to catch exceptions neatly. A new signal, DIE, is introduced. This signal will be fired every time an exception occurs. (For those of you new to the term exception, an exception is whenever the code decides to bail out by dieing.) If the signal handler returns 1 (as in the example above), POE will assume that the handler dealt with the signal appropriately. If the signal handler returns 0, POE will assume that the handler does not want to deal with the signal and POE will propgate the exception as if the handler never existed.
Caveat: POE::Exceptions will die on its own in the case of a double exception fault. If the DIE signal handler itself throws an exception, POE::Exceptions will shut the program down and bail out.
Download (0.010MB)
Added: 2007-05-24 License: Perl Artistic License Price:
883 downloads
MatPLC coruscant
MatPLC is a software-based PLC for industrial automation. more>>
MatPLC project is a software-based PLC for industrial automation.
MatPLC is a software-based PLC (Programmable Logic Controller) for industrial automation. Ultimately, it should be possible to run a factory using this software.
Currently, one should keep in mind that it is still at the testing stage, and is therefore not suitable for applications where incorrect operation would cause damage or danger.
We take advantage of the fact that we have an underlying operating system and use its features to make the MatPLC modular. One module could be executing mnemonics. Another module is a PID loop. A different module handles I/O, or logs to a database. (These modules all already exist.) The MatPLC then coordinates their workings to present a simple interface to the user.
Currently, we are in early stages: we have a solid core, mnemonics for logic modules (python or C can also be used), a signal-processing module which includes a PID loop, several I/O modules (including numerous industrial networks and an interface to the comedi project) and some simple HMI modules.
<<lessMatPLC is a software-based PLC (Programmable Logic Controller) for industrial automation. Ultimately, it should be possible to run a factory using this software.
Currently, one should keep in mind that it is still at the testing stage, and is therefore not suitable for applications where incorrect operation would cause damage or danger.
We take advantage of the fact that we have an underlying operating system and use its features to make the MatPLC modular. One module could be executing mnemonics. Another module is a PID loop. A different module handles I/O, or logs to a database. (These modules all already exist.) The MatPLC then coordinates their workings to present a simple interface to the user.
Currently, we are in early stages: we have a solid core, mnemonics for logic modules (python or C can also be used), a signal-processing module which includes a PID loop, several I/O modules (including numerous industrial networks and an interface to the comedi project) and some simple HMI modules.
Download (2.3MB)
Added: 2007-01-16 License: GPL (GNU General Public License) Price:
607 downloads
FlowDesigner 0.9.0
FlowDesigner is a free (GPL/LGPL) data flow oriented development environment. more>>
FlowDesigner is a free (GPL/LGPL) data flow oriented development environment. It can be used to build complex applications by combining small, reusable building blocks. In some ways, it is similar to both Simulink and LabView, but is hardly a clone of either.
FlowDesigner features a RAD GUI with a visual debugger. Although FlowDesigner can be used as a rapid prototyping tool, it can still be used for building real-time applications such as audio effects processing. Since FlowDesigner is not really an interpreted language, it can be quite fast.
It is written in C++ and features a plugin mechanism that allows plugins/toolboxes to be easiliy added.
Main features:
- Signal processing
- Audio processing (DSP)
- Vector quantization
- Neural network
- Fuzzy logic
- Real-time audio effect processing (pre-alpha)
- Linear algebra using LAPACK (pre-alpha)
- Octave plug-in (pre-alpha)
- Robotics
<<lessFlowDesigner features a RAD GUI with a visual debugger. Although FlowDesigner can be used as a rapid prototyping tool, it can still be used for building real-time applications such as audio effects processing. Since FlowDesigner is not really an interpreted language, it can be quite fast.
It is written in C++ and features a plugin mechanism that allows plugins/toolboxes to be easiliy added.
Main features:
- Signal processing
- Audio processing (DSP)
- Vector quantization
- Neural network
- Fuzzy logic
- Real-time audio effect processing (pre-alpha)
- Linear algebra using LAPACK (pre-alpha)
- Octave plug-in (pre-alpha)
- Robotics
Download (2.6MB)
Added: 2005-10-11 License: LGPL (GNU Lesser General Public License) Price:
1477 downloads
Secleted [ 0 ] software to compare
Copyright Notice:
Software piracy is theft, Using crack, password, serial numbers, registration codes, key generators is illegal and prevent future software development. The above signal processing search only lists software in full, demo and trial versions for free download. Download links are directly from our mirror sites or publisher sites, torrent files or links from rapidshare.com, yousendit.com or megaupload.com are not allowed