-
Notifications
You must be signed in to change notification settings - Fork 9
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Create LDMS stream publish for phase data #2183
Comments
Title should read LDMS? |
Also, vt's internal diagnostics seem to be perfect for feeding out to LDMS. |
The URL for the LDMS documentation has recently been updated to: https://ovis-hpc.readthedocs.io/en/latest/ldms/ldms-streams.html#how-to-make-a-data-connector |
I'm getting this compile-time error when I just include the three files listed above:
This is the script I used to install LDMS in the container: |
Can you please try to run the following and see if the issue still occurs? I've never encountered this kind of error and usually use the "make-all-top.sh" to build LDMS. This script automatically configures LDMS with the common flags that our team uses (build is under .../ovis/LDMS_install). In the meantime, I'm going to reach out others who are more experienced with this kind of error. |
UPDATE: What version of LDMS is being installed and what is the output of |
I was able to successfully build that LDMS and test it with vt (locally). Next I'll try to do the same within our Docker containers. |
I get the same error when using 4.3.11 version (or older). Issue is no longer present when using OVIS-4 branch source code. |
@JacobDomagala Thank you catching this and letting me know. The LDMS team and I will look into it. Feel free to reach out if you come across any more issues! |
@Snell1224 @vsurjadidjaja I'm a little confused as to how I should convert the output of |
We use epoch time for analyzing streams data so we send this in the JSON message. As for when to record/get the time, that's more of a preference thing. I'm not too familiar with VT but if you don't need to monitor the start/duration/end time of each phase, then getting the time whenever you send the JSON message will work. The example below shows what we do for Darshan and how we collect the end time of an I/O event (again this is just a preference):
|
https://ovis-hpcreadthedocs.readthedocs.io/en/latest/ldms-streams.html#how-to-make-a-data-connector
You'll need to include/import the following files: ldms.h, ldmsd_stream.h, util.h
For example, in C++ code, add the following:
You'll also need the object:
ldms_t* ldms
The function you'll need to add for publishing messages is:
ldmsd_stream_publish( (*ldms), <NAME_OF_SCHEMA>, <TYPE_OF_MSG>, <MSG_OBJECT>)
So, for example, if someone wanted to send Kokkos data as a JSON to their database, the function would look like this:
ldmsd_stream_publish( (*ldms), "kokkos-perf-data", LDMSD_STREAM_JSON,
The text was updated successfully, but these errors were encountered: