@@ -31,11 +31,11 @@ Contents:
31310.2. Unsupported experimental features
3232----------------------------------------
3333
34- - We are not yet supporting measurement and analysis of Cilk
35- applications, though you are free to try it out. (PPoPP '09)
36-
37- - We are don't yet support Cilk++. It violates our assumption that
38- profile interrupts can be processed on a thread's stack .
34+ - HPCToolkit can be used to analyze the performance of code parallelized
35+ using CilkPlus features available in Intel and GNU compilers. Without
36+ runtime support, HPCToolkit shows an implementation-level view where
37+ call stacks for worker threads contain whatever computation fragments
38+ they stole rooted at the stolen frames .
3939
4040- We are not yet supporting measurement and analysis of Pthreads lock
4141 contention, though you are free to try it out. (PPoPP '10)
@@ -185,32 +185,59 @@ Contents:
185185HPCToolkit Version 2017.06, June 2017
186186----------------------------------------
187187
188- Updated the 'ompt' branch and merged master into ompt. This branch,
189- together with the llvm-openmp runtime library (github project
190- OpenMPToolsInterface) provides support for attributing idleness in
191- openmp programs (event OMP_IDLE).
188+ Updated the 'ompt' branch and merged master into ompt. This improves
189+ scalability of the ompt support to large thread counts, as found on
190+ KNL and Power8. The ompt branch, together with the LLVM OpenMP runtime
191+ library provides
192+
193+ - support for attributing performance measurements to a global-view,
194+ source-level program representation by unifying measurements of OpenMP
195+ activity in worker threads with the main thread.
196+ - support for attributing causes of idleness in OpenMP programs using
197+ HPCToolkit event OMP_IDLE.
198+
199+ The LLVM OpenMP runtime can be used with Clang, Intel, and GNU compilers.
200+ The LLVM OpenMP runtime with OMPT support for performance analysis
201+ can be can be obtained as follows
202+
203+ svn co http://llvm.org/svn/llvm-project/openmp/trunk openmp
204+
205+ To use the draft OMPT support present in LLVM's OpenMP runtime, one must
206+ build the LLVM OpenMP runtime with LIBOMP_OMPT_SUPPORT=TRUE. This version
207+ of the runtime is designed to be used with HPCToolkit's ompt branch.
208+
209+ Note: support for the OMPT tools interface in HPCToolkit and LLVM
210+ currently follows a design outlined in TR2 at openmp.org. An improved
211+ version of the OMPT interface was designed for OpenMP 5.0, which
212+ is described in TR4 at openmp.org. At some point soon, both LLVM and
213+ HPCToolkit will transition to support the new API; presently, both lack
214+ support for the new API.
192215
193216Merged the 'atomics' branch into master. This branch replaces the
194217atomic operations in hpcrun with C11 atomics through the stdatomic.h
195218header file.
196219
197220Updated Dyninst to version 9.3.2 in externals, plus a patch for better
198- jump table support.
221+ binary analysis of functions that use jump tables.
222+
223+ Updated hpcstruct to handle new ABI on Power/LE architectures, which
224+ has both internal and external interfaces for functions.
225+
199226
200227Various bug fixes:
201228
202- -- fixed bugs in hpcrun and unwinding on x86-64 due to lea
203- instructions that resulted in partial unwinds.
229+ -- enhanced binary analysis for call stack unwinding on x86-64, including
230+ an enhancement to analyze functions that perform stack alignment and
231+ a bug fix to track stack frame allocation/deallocation of space for local
232+ variables using the load effective address (LEA) instruction.
204233
205- -- fixed bug in hpcrun over failing to reinitialize data after fork()
206- that affected programs with launch scripts.
234+ -- fixed bug in hpcrun to correct data reinitialization after fork(). This
235+ bug prevented using hpcrun to profile programs launched with shell scripts.
207236
208- -- fixed bug in hpcrun over binary analysis related to ld.so.
237+ -- fixed bug in hpcrun in binary analysis related to ld.so.
209238
210239-- fixed bug in hpcstruct in getRealPath() that caused hpcstruct
211- sometimes to report incorrect file names.
212-
213- -- fixed bug in hpcstruct over outlined function names on powerpc.
240+ to sometimes report incorrect file names.
214241
215242----------------------------------------
216243HPCToolkit Version 2016.12, Dec 2016
0 commit comments