180 likes | 333 Views
Roadmap of Upcoming Research, Features and Releases. Bart Miller & Jeff Hollingsworth. Paradyn/Dyninst Release 4.2. Dyninst: Stripped binary parsing for IA32 (Linux) and Power (AIX) Incremental (deferred) parsing of .so’s 32-bit binaries on AMD64/EM64T Smarter register allocation on Power
E N D
Roadmap of Upcoming Research, Features and Releases Bart Miller & Jeff Hollingsworth
Paradyn/Dyninst Release 4.2 Dyninst: • Stripped binary parsing for IA32 (Linux) and Power (AIX) • Incremental (deferred) parsing of .so’s • 32-bit binaries on AMD64/EM64T • Smarter register allocation on Power • Easier install/build • Support for monitoring dynamic call sites Bart Miller & Jeff Hollingsworth
Paradyn/Dyninst Release 4.2 Paradyn: • Loop support in the Performance Consultant • IA64 support • Instrument multi-threaded applications on Linux 2.4 (NPTL) and 2.6 • MPI-2 support (MPICH and LAM) • MPI-1 support (LAM) • Substantial progress on Paradyn as Dyninst client Bart Miller & Jeff Hollingsworth
Paradyn/Dyninst Release 4.2 Detailed changes: • Extended BPatch_type system to handling Fortran 90 constructs • Intel Compiler support on IA-64 • Support for AIX 5.2 • Improved stability of process control for threaded applications on Linux 2.6 • Parallel builds supported in the Makefile • Support for programs where 'main' is in a .so, not a executable • Handling Linux _dl_open security features Bart Miller & Jeff Hollingsworth
Upcoming Release 5.0 Dyninst support for multi-threaded applications (finally!) • Paradyn over MRNet • Paradyn as a Dyninst client • AMD/EM64T support in Dyninst, possibly in Paradyn Beta targeted for end 2Q05. Bart Miller & Jeff Hollingsworth
Kerninst Release 2.0.1 Our kernel instrumentation effort is alive and well! Major new DOE-funded collaborative started in collaboration with UT-El Paso (Pat Teller’s group) • Performance counter support for Pentium 4/Xeon • Bug fixes to release 2.0 Bart Miller & Jeff Hollingsworth
Imminent Release 2.1 • Power/Linux 2.4 support • Includes Power 4 hardware counters • IA32/Linux 2.6 support • Kerninstd, kperfmon, and libkerninstapi binaries work on both Linux 2.4 and 2.6 • New kernel driver for Linux 2.6 • Additions to the kerninstAPI • replaceFunction & replaceFunctionCall • New user library for easily managing virtual timers • Improved documentation and examples • IA32 support for kapi_retval_expr, kapi_param_expr, kapi_times, kapi_divide Bart Miller & Jeff Hollingsworth
Imminent Release 2.1 • SPARC/Solaris Improvements • In-driver timer and context-switch handling (no more downloaded code) • kperfmon used kapi sampling interface (no more downloaded code) • Solaris driver compiles with gcc/g++ • Support for SPARC v9 return instructions • Kperfmon can be built with either tcl/tk 8.3 or 8.4 Bart Miller & Jeff Hollingsworth
MRNet • Imminent release 1.1: • Windows support • Paradyn integration preparation (scalable start-up) • Clock skew filter • Equiv class filters for resource and call-graph reporting • IBM/Sun native compiler support • Support for multiple overlays in single tool/application • Topology specification via memory buffer • Support for back-ends not started by MRNet • Comprehensive test suite • Various fixes and enhancements Bart Miller & Jeff Hollingsworth
MRNet • Release 2.0 (in concert with Paradyn 5.0): • Dynamically changing topologies • Network join protocol for back-ends not started by MRNet • Paradyn integration • Concatenation filters for other initialization data • Scalable Data collection • Time-aligned data aggregation • Use strings instead of numeric identifiers to remove global consistency overhead • Use wild-cards to reduce amount of network traffic Bart Miller & Jeff Hollingsworth
MRNet • Related research activities: • Fault-tolerance/reliability research: • Enhanced failure detection protocols • Efficient roll-back recovery protocols • Reliable multi-hop communication with efficient data loss repair • Performance modeling of MRNet • Scalable trace processing Bart Miller & Jeff Hollingsworth
Upcoming Effort: Binary Editing An integrated static and dynamic binary code instrumentation infrastructure: • Static (binary rewriting) tool • Dynamic (dyninst) tool • Interoperable Bart Miller & Jeff Hollingsworth
Upcoming Effort: Binary Editing • Open, modular analysis infrastructure: • Instruction-set scanner, code parser, symtab parser, control/data-flow graph generators. • Separate API’s • Separate test suites • Plug-able architecture for advanced analyses • Advanced code analyses Bart Miller & Jeff Hollingsworth
Upcoming Effort: Enhanced Testing Current Dyninst API test suite is crucial to our stability and reliability, but . . . • Many testing dimensions: • Operating system, architecture, language, compiler, compile options, executable format, symbols, test mutatee, etc. etc. • Current test are evolved into ad hoc collections of subtests with many implicit interdependences. • A prescriptive approach to test structure. • Platform dependences built into test. Bart Miller & Jeff Hollingsworth
Upcoming Effort: Enhanced Testing Goal: a clear modular testing structure • Each subtest encapsulated in a separate .c file. • Descriptive specification of tests, platforms, dependences, etc. • Automatic generation of executable test programs. Result: • More maintainable, understandable, reliable testing. • Leverage this infrastructure for the new tool structure. Bart Miller & Jeff Hollingsworth
Your comments and feedback are welcome and encouraged. Please talk with us tomorrow, via email or at future meetings. Bart Miller & Jeff Hollingsworth