rdcd process uses 100% CPU
The rdcd uses another thread to listen the GPU events. That thread
runs in a tight loop which consume 100% CPU.
The fix will add a sleep to yield CPU.
Bug: SWDEV-291576
Change-Id: I7996720aab4a80346d79b1c73ee532d2abcd93cc
[ROCm/rdc commit: 5a4bf97327]
This commit is contained in:
@@ -273,8 +273,7 @@ else()
|
||||
endif()
|
||||
|
||||
# 755 permissions
|
||||
set(INST_SCR_PERM "OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ
|
||||
GROUP_EXECUTE WORLD_READ WORLD_EXECUTE")
|
||||
set(INST_SCR_PERM OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
|
||||
configure_file(
|
||||
"${PROJECT_SOURCE_DIR}/src/DEBIAN_postinst.in"
|
||||
"${PROJECT_SOURCE_DIR}/DEBIAN/postinst" FILE_PERMISSIONS ${INST_SCR_PERM})
|
||||
|
||||
@@ -48,6 +48,8 @@ void RdcMetricsUpdaterImpl::start() {
|
||||
notif_updater_ = std::async(std::launch::async, [this](){
|
||||
while (started_) {
|
||||
watch_table_->rdc_field_listen_notif(kRdcFieldListenNotifTime_mS);
|
||||
std::this_thread::sleep_for(
|
||||
std::chrono::microseconds(_check_frequency));
|
||||
}
|
||||
});
|
||||
updater_ = std::async(std::launch::async, [this](){
|
||||
|
||||
Reference in New Issue
Block a user