Working on a basic profiler which will gather start and finish time of GASNet communicative operations in Cray Chapel. Only idea which came in mind was to insert instructions in Chapel comm functions to get function call time. Is there any way to do it without messing with language source code?
Gathering info about GASNet communicative operations in Cray Chapel
306 Views Asked by dreamca4er At
1
There are 1 best solutions below
Related Questions in PROFILING
- Error Using Valgrind's callgrind and kcachegrind on a C++
- what are the numbers in the operation names when profiling an application
- Node.js --cpu-prof flag: Failed to convert CPU profile message to V8 string
- Identifying the cause of poor training performance on RTX 4090
- perf -- record cache misses at thread level granularity
- Script to track network usage showing increased results when not sending packets
- Are anonymous functions optimized in node.js
- Why VTune fails with error `[Instrumentation Engine]: __libc_thread_freeres()`?
- How to profile integration tests in java
- Why "current_thread" identifier is not in "_current_frames" dictionary?
- Raspberry Pi 4: Uneven speed of GPIO bit-banging in C loop (RPi 4, 64bit)
- Why won't this duckdb query of s3/parquet data save 'EXPLAIN ANALYZE' profiling info?
- How to resolve Segmentation Fault in RISC-V Program
- What are tasks inside another task in DevTools profiler?
- Get trace of executed Instructions in Spike simulator
Related Questions in CRAY
- Problem with !$acc declare create directive
- OpenACC code runs 17036.0939901 times faster on Nvidia V100 GPU than on AMD MI250 GPU
- Install Cray's gdb4hpc on a personal Linux computer
- Fortran executable doesn't like command line input of integer
- Fortran code executes under Intel and GNU, fails under Cray
- Direct I/O possible with Cray compiler?
- Process placement with aprun -- need one process per node
- C compiler using variable defined in Fortran module on Cray
- Cray compiler asks for a flag, then doesn't recognize it
- Why is CMake find_package ignoring linker flags?
- Craycc equivalent for "mcmodel"
- Relaxed implicit type conversion between integer and logical using the Cray Fortran Compiler (cce 8.7.9)
- The correct way to introduce preprocessing directives into a Fortran code for the Cray compiler
- cray CC wrapper cmake find_package blas
- MPI spawn and cray's aprun
Related Questions in GASNET
- Where can I find documentation of gasnet collectives
- Multilocale Chapel: make check fails (GASNet: Invalid number of nodes: -nl)
- Problems when using Chapel 1.19 along with GASNet PSM (OmniPath) substrate
- What are the differences between "put" and "store" in Partitioned Global Address Space Languages (PGAS) like UPC?
- How to compile the PMI support for running Chapel/GASNet on Omni-Path networks?
- How to Configure Chapel/GASNet for running multilocale codes on MXM Infiniband network with Partition Key?
- Chapel - Problems With Multilocale Configuration of GASNET MPI substrate
- Chapel Gasnet unexpected EOF while looking for matching `''
- Gathering info about GASNet communicative operations in Cray Chapel
Related Questions in CHAPEL
- What is the task number specification on "begin" statements? (compared with cobegin, forall, and coforall)
- Is there a way to string.format a runtime-determined number of items in one call in Chapel?
- Chapel container segfaults only when running on Windows
- The Chapel c_str() function seems to return a c_string
- How the get the sizes of the dimensions of a multi-dimensional array in Chapel?
- How should I resolve this domain error in Chapel?
- Chapel loop variable undeclared
- Chapel - Ranges defined using bounds of type 'range(int(64),bounded,false)' are not currently supported
- Increasing Transaction Size of Communication Operations
- Compilation fails using Chapel on a mac
- Parallel Writes to NFS-backed File
- Distributed Array Access Communication Cost
- What does the Chapel compiler error "use of [symbol] before encountering its definition, type unknown" mean?
- Idiomatic Chapel Way to Create Uneven Distribution
- Where do you put the type in Chapel variable declarations?
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular # Hahtags
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
GASNet has a powerful built-in tracing infrastructure that can be used to gather communication traces of any GASNet client. It is enabled by configuring GASNet with --enable-trace. There is also a statistical collection feature available via --enable-stats. For more information on these see the 'GASNet tracing & statistical collection' section of the README here:
https://bitbucket.org/berkeleylab/gasnet/overview
Note that these tracing and stat features are written primarily for debugging GASNet and language runtime systems, and can impose a noticeable execution time overhead (CPU and File I/O in the case of tracing). Also all the information will be at the level of GASNet operations and memory locations, rather than at the high-level language. So it works without changes and will give you plenty of information, but it might not be a perfect match for your Chapel profiling needs.