Skip to content

Commit a1b42e7

Browse files
committed
Clean up code
1 parent b87b828 commit a1b42e7

File tree

2 files changed

+17
-16
lines changed

2 files changed

+17
-16
lines changed

source/lib/core/config.cpp

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1331,7 +1331,6 @@ configure_signal_handler(const std::shared_ptr<settings>& _config)
13311331
signal_settings::enable(itr);
13321332
if(_ignore_dyninst_trampoline)
13331333
signal_settings::disable(static_cast<sys_signal>(_dyninst_trampoline_signal));
1334-
13351334
auto enabled_signals = signal_settings::get_enabled();
13361335
tim::signals::enable_signal_detection(enabled_signals);
13371336
}

source/lib/rocprof-sys/library.cpp

Lines changed: 17 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -156,7 +156,7 @@ ensure_finalization(bool _static_init = false)
156156
config::set_signal_handler(&finalization_handler);
157157

158158
if(config::set_attach_signal_handler(nullptr) == nullptr)
159-
config::set_signal_handler(&attach_detach_handler);
159+
config::set_attach_signal_handler(&attach_detach_handler);
160160

161161
if(_static_init)
162162
{
@@ -418,8 +418,16 @@ rocprofsys_init_library_hidden()
418418
} };
419419

420420
ROCPROFSYS_CONDITIONAL_BASIC_PRINT_F(_debug_init, "\n");
421-
}
422421

422+
if(tim::get_env("ROCPROFSYS_ATTACH", false) &&
423+
config::set_attach_signal_handler(nullptr) == nullptr)
424+
config::set_attach_signal_handler(&attach_detach_handler);
425+
}
426+
// Initialize RCCL if:
427+
// - postinit=true - so the code doesn't hang at the initialization stage
428+
// - get_state() >= State::Init - so the code doesn't throw an exception
429+
// - rccl_initialized=false - so we don't try to initialize RCCL twice
430+
// - get_use_rcclp()=true - only if the environment is configured to use RCCL
423431
static void
424432
rccl_setup(bool postinit)
425433
{
@@ -467,14 +475,11 @@ rocprofsys_init_tooling_hidden(bool postinit)
467475

468476
ROCPROFSYS_CONDITIONAL_BASIC_PRINT_F(_debug_init, "State is %s...\n",
469477
std::to_string(get_state()).c_str());
470-
if(_is_attach)
471-
if(get_state() != State::PreInit || get_state() == State::Init || _once)
472-
{
473-
rccl_setup(postinit);
474-
if(!tim::get_env("ROCPROFSYS_ATTACH", false) ||
475-
get_state() >= State::Active || _once)
476-
return false;
477-
}
478+
if(get_state() != State::PreInit || get_state() == State::Init || _once)
479+
{
480+
rccl_setup(postinit);
481+
if(!_is_attach || get_state() >= State::Active || _once) return false;
482+
}
478483
_once = true;
479484

480485
ROCPROFSYS_SCOPED_THREAD_STATE(ThreadState::Internal);
@@ -549,13 +554,10 @@ rocprofsys_init_tooling_hidden(bool postinit)
549554
if(get_use_sampling()) sampling::block_signals();
550555

551556
// perfetto initialization
552-
// Tim: Perfetto should only need to be setup once.
553-
static bool _perfetto_once = false;
554-
if(!_perfetto_once && get_use_perfetto())
557+
if(get_use_perfetto())
555558
{
556559
ROCPROFSYS_VERBOSE_F(1, "Setting up Perfetto...\n");
557560
rocprofsys::perfetto::setup();
558-
_perfetto_once = true;
559561
}
560562

561563
tasking::setup();
@@ -606,7 +608,7 @@ rocprofsys_init_tooling_hidden(bool postinit)
606608
categories::setup();
607609

608610
#if defined(ROCPROFSYS_USE_ROCM) && ROCPROFSYS_USE_ROCM > 0
609-
rocprofiler_sdk::start();
611+
if(_is_attach) rocprofiler_sdk::start();
610612
#endif
611613
// if static objects are destroyed in the inverse order of when they are
612614
// created this should ensure that finalization is called before perfetto

0 commit comments

Comments
 (0)