• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

daisytuner / docc / 24215882789

09 Apr 2026 10:12PM UTC coverage: 64.375% (-0.007%) from 64.382%
24215882789

Pull #668

github

web-flow
Merge 6f7f28e8f into bb3981349
Pull Request #668: Offload Memset to GPU

249 of 381 new or added lines in 18 files covered. (65.35%)

189 existing lines in 2 files now uncovered.

29942 of 46512 relevant lines covered (64.37%)

584.42 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

72.73
/opt/src/passes/offloading/rocm_library_node_transfer_extraction_pass.cpp
1
#include "sdfg/passes/offloading/rocm_library_node_transfer_extraction_pass.h"
2

3
#include "sdfg/data_flow/library_nodes/math/blas/blas_node.h"
4
#include "sdfg/data_flow/library_nodes/stdlib/memset.h"
5
#include "sdfg/transformations/offloading/rocblas_data_transfer_extraction.h"
6
#include "sdfg/transformations/offloading/rocm_stdlib_data_transfer_extraction.h"
7

8
namespace sdfg {
9
namespace rocm {
10

11
RocmLibraryNodeTransferExtractionVisitor::RocmLibraryNodeTransferExtractionVisitor(
12
    builder::StructuredSDFGBuilder& builder, analysis::AnalysisManager& analysis_manager
13
)
14
    : visitor::NonStoppingStructuredSDFGVisitor(builder, analysis_manager) {}
2✔
15

16
bool RocmLibraryNodeTransferExtractionVisitor::visit() { return visitor::NonStoppingStructuredSDFGVisitor::visit(); }
2✔
17

18
bool RocmLibraryNodeTransferExtractionVisitor::accept(structured_control_flow::Block& block) {
4✔
19
    auto& dataflow = block.dataflow();
4✔
20
    for (auto lib_node : dataflow.library_nodes()) {
4✔
21
        if (auto* blas_node = dynamic_cast<math::blas::BLASNode*>(lib_node)) {
4✔
NEW
22
            ROCBLASDataTransferExtraction expansion(*blas_node);
×
NEW
23
            if (expansion.can_be_applied(builder_, analysis_manager_)) {
×
NEW
24
                expansion.apply(builder_, analysis_manager_);
×
NEW
25
                return true;
×
NEW
26
            }
×
NEW
27
        }
×
28
        if (auto* memset_node = dynamic_cast<stdlib::MemsetNode*>(lib_node)) {
4✔
29
            ROCMStdlibDataTransferExtraction expansion(*memset_node);
3✔
30
            if (expansion.can_be_applied(builder_, analysis_manager_)) {
3✔
31
                expansion.apply(builder_, analysis_manager_);
1✔
32
                return true;
1✔
33
            }
1✔
34
        }
3✔
35
    }
4✔
36
    return false;
3✔
37
}
4✔
38

39
} // namespace rocm
40
} // namespace sdfg
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc