Skip to content

Commit 904448c

Browse files
authored
Merge branch 'master' into report-executor-starvation
2 parents ff61e3c + 3c5fff2 commit 904448c

3 files changed

Lines changed: 9 additions & 3 deletions

File tree

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@ Versioning](http://semver.org/spec/v2.0.0.html).
3939
### Fixed
4040

4141
- Host-initialized buffers will not read from user-provided memory after the last reference to the buffer has been dropped (#283)
42+
- Fix a build issue with (rare) configurations which enable both Tracy and OOB-checks (#331)
4243

4344
### Deprecated
4445

src/live_executor.cc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -514,7 +514,7 @@ void live_executor::impl::retire_async_instruction(const instruction_id iid, asy
514514

515515
#if CELERITY_ACCESSOR_BOUNDARY_CHECK
516516
if(async.oob_info != nullptr) {
517-
CELERITY_DETAIL_TRACY_ZONE_SCOPED_V("executor::oob_check", Red, "I{} bounds check", iid);
517+
CELERITY_DETAIL_TRACY_ZONE_SCOPED_V("executor::oob_check", executor_oob_check, "I{} bounds check", iid);
518518
const auto& oob_info = *async.oob_info;
519519
for(size_t i = 0; i < oob_info.accessors.size(); ++i) {
520520
if(const auto oob_box = oob_info.illegal_access_bounding_boxes[i].into_box(); !oob_box.empty()) {

test/test_utils.cc

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -242,8 +242,7 @@ namespace celerity::test_utils_detail {
242242

243243
const char* const expected_runtime_init_warnings_regex = "Celerity has detected that only .* logical cores are available to this process.*|"
244244
"Celerity detected more than one node \\(MPI rank\\) on this host, which is not recommended.*|"
245-
"Instrumentation for profiling with Tracy is enabled\\. Performance may be negatively impacted\\.|"
246-
"\\[executor\\] no progress for .* seconds, potentially stuck.*";
245+
"Instrumentation for profiling with Tracy is enabled\\. Performance may be negatively impacted\\.|";
247246

248247
const char* const expected_device_enumeration_warnings_regex = "Found fewer devices .* than local nodes .*, multiple nodes will use the same device.*";
249248

@@ -258,6 +257,8 @@ const char* const expected_starvation_warning_regex =
258257
"The executor was starved for instructions for [0-9]+\\.[0-9] .{0,2}s, or [0-9]+\\.[0-9]% of the total active time of [0-9]+\\.[0-9] .{0,2}s. This may "
259258
"indicate that your application is scheduler-bound. If you are interleaving Celerity tasks with other work, try flushing the queue.";
260259

260+
const char* const expected_executor_progress_warnings_regex = "\\[executor\\] no progress for .* s, might be stuck.*";
261+
261262
} // namespace celerity::test_utils_detail
262263

263264
namespace celerity::test_utils {
@@ -293,6 +294,10 @@ runtime_fixture::runtime_fixture() {
293294
allow_higher_level_log_messages(spdlog::level::warn, test_utils_detail::expected_device_enumeration_warnings_regex);
294295
allow_higher_level_log_messages(spdlog::level::warn, test_utils_detail::expected_backend_fallback_warnings_regex);
295296
allow_higher_level_log_messages(spdlog::level::warn, test_utils_detail::expected_starvation_warning_regex);
297+
// in debug builds, allow executor "stuck" warnings to avoid spurious test failures due to slow execution
298+
#if CELERITY_DETAIL_ENABLE_DEBUG
299+
allow_higher_level_log_messages(spdlog::level::warn, test_utils_detail::expected_executor_progress_warnings_regex);
300+
#endif
296301
}
297302

298303
runtime_fixture::~runtime_fixture() {

0 commit comments

Comments
 (0)