Removing DEBUG_TRACES and the unnecessary use of roctracer_op_string, made the MS app reporting 78 to 81 stable samples per second, depending on the type of the trace, while the main app without rocprof reports 100 to 106. More detailed numbers will be posted in the ticket.
Change-Id: Ida25d3bfc72047afaa27326d697be76d97564334
[ROCm/roctracer commit: e7327aaac7]
Exchanging the git clone of the hsa-class to a local downloaded version pushed to the roctracer repo
Change-Id: Id45a38b2d355102c2e0dee1e4bfde50398369047
[ROCm/roctracer commit: 7ee4f87b73]
Include the upgrade operation check in the prerm script
in package.
Signed-off-by: Saravanan Solaiyappan <saravanan.solaiyappan@amd.com>
Change-Id: I1504ce96a27d21d9c3d9bafc0dea8055398adc99
[ROCm/roctracer commit: bfea525ff3]
Changing pthread_yield() to sched_yield() as pthread_yield() is deprecated in CentOS 9
Change-Id: I2961b61374e36995d0835f0e65b26c35f5eb8715
[ROCm/roctracer commit: 43a36f8dd5]
Removing the RPATH skip & Removing the install path that was defined CMakelist
Change-Id: Icf374b9548fc7b24e99a1b5ab9720ce6d775abf8
[ROCm/roctracer commit: 8098ec6acf]
To fix the issue we modified CMakeLists.txt as described in Sparry Icarus comment
Change-Id: Ie9ca16cfcfb7b7a9a858f0fb1f5071923c787313
[ROCm/roctracer commit: 554011e767]
Making the new License file, Adding support in the CMakeLists.txt
Change-Id: I43862b8b7f3025ae6200aeb442ea70c7993a7349
[ROCm/roctracer commit: b721e3209e]
The manually written Makefiles in the test directory are not safe to
use by more than one job. For example we see things like
all: clean $(EXECUTABLE)
which says that the 'all' target depends on the 'clean' and
'$(EXECUTABLE)' targets. If make is invoked with -j2 then the clean
and '${EXECUTABLE}' can be built in parallel, so the clean can delete
things whilst they are being built!
Change-Id: I9c56db4c629081b8d812dad45dfd4afde10e481f
Signed-off-by: Icarus Sparry <icarus.sparry@amd.com>
[ROCm/roctracer commit: 8ea268b3f4]
on_exit() registered exit_handler function, but in the case of OpenMP applications the registered exit func exit_handler was called after the dlclose of the library. So we removed exit_handler from roctracer as it is already handled in both rocprofiler and rocprof script.
Change-Id: I7c3d42e6ccc282e713b48b4a7faec4935e7a2600
[ROCm/roctracer commit: aa41554130]
Changing correlation_id_map to static instance instead of being a pointer and fixing the corresponding references
Change-Id: Id8a481a90b46831f91985a7e0523fd2869991aeb
[ROCm/roctracer commit: 1e3ed06a9a]
Use HIP_API_ID_NONE to detect unsupported API instead of
HIP_API_ID_NUMBER which can grow with a new version of the API.
This HIP_API_ID_NONE enum has a fixed value of 0 so the
HIP_API_IDs really start at FIRST.
Change-Id: I760aa50ddf6fa6d46bf20555ad7d429335a53f97
[ROCm/roctracer commit: b04dfd5fdf]
Cmake will do the post processing required for RPATH or any other
needed for the libraries only if installed as libraries not as
regular files
FIX: SWDEV-287893
Change-Id: I9cf478fcd23b9f2e8b3bdd81aa566cad3ec2a5e3
[ROCm/roctracer commit: 1cc934204f]
In HsaTimer::correlated_pair_ns, the time ID should be used to
select the clock ID passed to clock_gettime.
In MemoryPool::allocator_default, pass the correct value to realloc.
Change-Id: I5d10c0994c07fdeadd99c81deba4e71a4f579523
[ROCm/roctracer commit: 297b613604]
As this snippet shows, HCC is no longer supported by roctracer:
#if HIP_VDI
...
#else
#error HCC support dropped
#endif
Removed HIP_VDI from the CMakeLists.txt, and the source code.
Change-Id: Ib273da2a5af6d67fa1b021a7eca3ff785c8b9c73
[ROCm/roctracer commit: 8fb3cdb30b]
CppHeaderParser has limited support for unnamed structs. It leaves the
name empty so this results in classes (a.k.a structs) having trailing '::'
characters, also giving no way to distingush two unnamed structs at the
same level of nesting. An example are the inner structs of
hipExternalSemaphoreSignalParams. The workaround consists in skipping
over these, so they are not generated in the output header file
which lists all ostream ops<<. Only the inner unnamed structs are skipped,
the rest is processed as it should.
Change-Id: I17439c46095469b7adb7aee0b0f0b3d234aabc11
[ROCm/roctracer commit: faada3e569]
All packages should have a valid email for contact.
SWDEV-257322
Change-Id: I3a489bde4283545cba2ee377edc5a8b7adb75116
[ROCm/roctracer commit: 7bcac00f35]
All packages should have a valid email for contact.
SWDEV-257322
Change-Id: I04b7d5ccc618b0a0907a75a92f50c9da64c3ff32
[ROCm/roctracer commit: 0cff9b7dc9]
Add numa lib as this will be required with a static thunk
Look for static thunk of shared thunk cannot be found
Signed-off-by: Kent Russell <kent.russell@amd.com>
Change-Id: I5de63e0a56a8946132ccbb7140a19a82a70b951d
[ROCm/roctracer commit: 5c9329aec8]
On Ubuntu 20.04, in Release mode, gcc fails with this error:
In file included from /usr/include/string.h:495,
from /opt/rocm/include/hsa/hsa_api_trace.h:57,
from ../roctracer/src/util/hsa_rsrc_factory.h:29,
from ../roctracer/src/util/hsa_rsrc_factory.cpp:25:
In function ‘char* strncpy(char*, const char*, size_t)’,
inlined from ‘const util::AgentInfo* util::HsaRsrcFactory::AddAgentInfo(hsa_agent_t)’ at ../roctracer/src/util/hsa_rsrc_factory.cpp:323:12:
/usr/include/x86_64-linux-gnu/bits/string_fortified.h:106:34: error: ‘char* __builtin___strncpy_chk(char*, const char*, long unsigned int, long unsigned int)’ specified bound depends on the length of the source argument [-Werror=stringop-overflow=]
106 | return __builtin___strncpy_chk (__dest, __src, __len, __bos (__dest));
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../roctracer/src/util/hsa_rsrc_factory.cpp: In member function ‘const util::AgentInfo* util::HsaRsrcFactory::AddAgentInfo(hsa_agent_t)’:
../roctracer/src/util/hsa_rsrc_factory.cpp:322:39: note: length computed here
322 | const int gfxip_label_len = strlen(agent_info->name) - 2;
| ~~~~~~^~~~~~~~~~~~~~~~~~
The error is caused by the following 2 lines:
const int gfxip_label_len = strlen(agent_info->name) - 2;
strncpy(agent_info->gfxip, agent_info->name, gfxip_label_len);
The size argument to strncpy should not depend on the input string.
Since the terminating character is not considered (the copy is at
most len - 2 bytes), using memcpy is preferable. Also, make sure
the destination does not overflow by clamping the size.
Change-Id: I37c5c45418e7c31a017581b6c16e5d47cd61aec5
[ROCm/roctracer commit: 38009bfba4]