Valgrind is a tool that helps you find memory management problems in programs. When a program is run under Valgrind's supervision, all reads and writes of memory are checked, and calls to malloc/new/free/delete are intercepted. As a result, Valgrind can detect problems such as use of uninitialized memory, reading/writing of memory after it has been freed, reading/writing off the end of malloced blocks, reading/writing inappropriate areas on the stack, memory leaks in which pointers to malloced blocks are lost forever, passing of uninitialized and/or unaddressable memory to system calls, and mismatched use of malloc/new/new  vs. free/delete/delete .
The Intel Software Development Emulator is a functional emulator for new and upcoming instruction set extensions. The emulator is based on the Pin dynamic binary instrumentation system (and XED). It emulates the new instructions in the SSE4, AES, PCLMULQDQ, and RTM, BMI1, and BMI2 Intel AVX, AVX2, and AVX512 instruction set extensions. This allows developers to gain familiarity with Intel's upcoming instruction set extensions.
OWASP Zed Attack Proxy (ZAP) is an easy-to-use integrated penetration testing tool for finding vulnerabilities in Web applications. It is designed to be used by people with a wide range of security experience and as such is ideal for developers and functional testers who are new to penetration testing as well as being a useful addition to an experienced pen tester's toolbox. ZAP provides automated scanners as well as a set of tools that allow you to find security vulnerabilities manually.
YourKit Java Profiler is a CPU and memory profiler that makes it easy to solve wide range of CPU- and memory-related performance problems. It features automatic leak detection, powerful tools for the analysis of memory distribution, an object heap browser, comprehensive memory tests as part of your JUnit testing process, extremely low profiling overhead, transparent deobfuscation support, and integration with Eclipse, JBuilder, IntelliJ IDEA, NetBeans, and JDeveloper IDEs.
Scapy is a powerful interactive packet manipulation tool, packet generator, network scanner, network discovery tool, and packet sniffer. It provides classes to interactively create packets or sets of packets, manipulate them, send them over the wire, sniff other packets from the wire, match answers and replies, and more. Interaction is provided by the Python interpreter, so Python programming structures can be used (such as variables, loops, and functions). Report modules are possible and easy to make. It is intended to do about the same things as ttlscan, nmap, hping, queso, p0f, xprobe, arping, arp-sk, arpspoof, firewalk, irpas, tethereal, tcpdump, etc.
Java Memory Profiler (JMP) uses the JVMPI interface to track objects and method times in the JVM (Java Virtual Machine). It uses a GTK+ interface to display statistics. The current instance count and the total amount of memory for each class is shown as is the total time spent in each method.
CMake is a cross-platform, open-source build system. It is used to control the software compilation process using simple platform and compiler independent configuration files. It generates native makefiles and workspaces that can be used in the compiler environment of your choice. CMake is quite sophisticated: it is possible to support complex environments requiring system configuration, pre-processor generation, and code generation.
The Linux Test Project is a joint project with SGI, IBM, OSDL, Bull, and Wipro Technologies with a goal to deliver test suites to the open source community that validate the reliability, robustness, and stability of Linux. The project consists of well over 2000 individual testcases and a test driver to automate execution of the tests.
TAU (Tuning and Analysis Utilities) is a set of tools for analyzing the performance of C, C++, Fortran and Java programs. It collects much more information than is available through prof or gprof, the standard Unix utilities, including per-process, per-thread, and per-host information, inclusive and exclusive function times, profiling groups that allow you to organize data collection, access to hardware counters on some systems, per-class and per-instance information, the ability to separate data for each template instantiation, start/stop timers for profiling arbitrary sections of code, and support for collection of statistics on user-defined events.