Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
58 commits
Select commit Hold shift + click to select a range
2ae0370
feat: add bitset and frontier classes with atomic operations and tests
antonio-decaro Jul 1, 2025
e706091
feat: enhance frontier class with additional operations and tests; re…
antonio-decaro Jul 7, 2025
33ac3f3
feat: enhance frontier class with additional methods and tests for ch…
antonio-decaro Jul 7, 2025
7c774a6
insert compunte active kernel
antonio-decaro Jul 8, 2025
ecf9eea
add compute active frontier operation
antonio-decaro Jul 9, 2025
3a954ba
bug fix
antonio-decaro Jul 16, 2025
8872afd
refactor: rename clear and gas methods to unset and atomic_unset for …
antonio-decaro Jul 16, 2025
0a9ebf0
feat: add advance operation tests for frontier class; include device …
antonio-decaro Jul 17, 2025
6c3cd8f
fixed advance operator
antonio-decaro Jul 23, 2025
2a1c313
implemented async advance
antonio-decaro Jul 23, 2025
f5c0982
add documentation for frontier
antonio-decaro Jul 23, 2025
654cfbb
Refactor frontier implementation and add tests
antonio-decaro Jul 25, 2025
0f89844
add performance tests for bfs
antonio-decaro Jul 28, 2025
fcf9da1
Refactor advance function to remove expected_size parameter and optim…
antonio-decaro Aug 27, 2025
f25edbe
moved bitset to frontier folder
antonio-decaro Aug 27, 2025
a3ff93a
applied clang-format
antonio-decaro Aug 27, 2025
5364b83
added trailing new line to source files to complie with the CI format…
antonio-decaro Sep 1, 2025
2c951f3
update headers to comply with the oneDAL naming style
antonio-decaro Sep 3, 2025
9c17af2
primitives/frontier: remove unused dependencies from BUILD
antonio-decaro Sep 3, 2025
029a2ba
primitives/frontier: small code cleanup in advance.hpp (comment remov…
antonio-decaro Sep 3, 2025
cfd9c85
primitives/frontier: remove unused includes and stray blank lines in …
antonio-decaro Sep 3, 2025
4a7efbc
Remove perf_tests target from frontier BUILD
antonio-decaro Sep 19, 2025
dd8a32d
Refactor frontier context and bitmap kernel: rename Context/ContextSt…
antonio-decaro Sep 19, 2025
d0350b3
Remove performance testing scaffolding from frontier BFS test and ren…
antonio-decaro Sep 19, 2025
c717493
Enhance code readability by adding comments and using const for varia…
antonio-decaro Sep 19, 2025
c2ba9f2
Add copyright notices to header files in the frontier module
antonio-decaro Sep 22, 2025
fd3c99b
Refactor frontier test files: change vector to set for frontier repre…
antonio-decaro Sep 22, 2025
c6f7f17
Refactor compute_next_frontier to use vector<bool> instead of set<uin…
antonio-decaro Sep 22, 2025
b22b944
tests(frontier): add shared test utilities and wire includes; expose …
antonio-decaro Sep 22, 2025
24b1843
tests(frontier): switch tests to randomized graph generation and refi…
antonio-decaro Sep 22, 2025
376b753
applied clang-format to the new files
antonio-decaro Sep 22, 2025
b39b670
add trailing new line to comply with format checker
antonio-decaro Sep 22, 2025
b56486b
Update copyright notices
antonio-decaro Oct 15, 2025
23bc166
update copyright notice and license information in frontier.hpp
antonio-decaro Oct 15, 2025
ccbe57f
frontier: refactor advance.hpp — use fixed-width integers and simplif…
antonio-decaro Oct 15, 2025
5e2484d
frontier: use std::uint64_t for sizes in bitset, frontier and frontie…
antonio-decaro Oct 15, 2025
8b8f5da
graph: use std::uint64_t for number of nodes in csr_graph_view
antonio-decaro Oct 15, 2025
1bc1da2
tests: adapt frontier and BFS tests to use std::uint64_t for counts a…
antonio-decaro Oct 15, 2025
4594875
frontier: add element count to bitset constructor and store size
antonio-decaro Oct 15, 2025
b705119
frontier: propagate sizes and add docs and swap helper
antonio-decaro Oct 15, 2025
4db28c0
frontier: remove unnecessary bitset include from graph header
antonio-decaro Oct 15, 2025
567adcb
frontier/advance: rename kernel, tighten types, and polish docs/forma…
antonio-decaro Oct 15, 2025
9e30ff3
refactor: improve bitset layer size calculation for frontier initiali…
antonio-decaro Oct 15, 2025
6a75234
clang-format fix
olegkkruglov Jan 16, 2026
b90af95
Change license yaml to be able to add possible additional copyright
olegkkruglov Jan 20, 2026
8848bd8
fix?
olegkkruglov Jan 20, 2026
e58ef13
fix?
olegkkruglov Jan 20, 2026
3f79522
fix?
olegkkruglov Jan 20, 2026
c8704e9
fix?
olegkkruglov Jan 20, 2026
3c24fe0
fix?
olegkkruglov Jan 20, 2026
b924014
fix?
olegkkruglov Jan 20, 2026
c87ffd3
fix?
olegkkruglov Jan 20, 2026
35b4420
fix?
olegkkruglov Jan 20, 2026
51864e3
fix?
olegkkruglov Jan 20, 2026
379e22d
test
olegkkruglov Jan 20, 2026
a3b96a1
fix
olegkkruglov Jan 27, 2026
594c10d
Make license checker strict
olegkkruglov Jan 29, 2026
0d63b37
Add preview namespace
olegkkruglov Jan 30, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 5 additions & 4 deletions .github/.licenserc.yaml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#===============================================================================
# Copyright Contributors to the oneDAL Project
# Copyright contributors to the oneDAL Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
Expand All @@ -19,9 +19,10 @@ header:
spdx-id: Apache-2.0
copyright-owner: contributors to the oneDAL project
pattern: |
(Copyright \d{4} Intel Corporation|Copyright contributors to the oneDAL project)

Licensed under the Apache License, Version 2\.0 \(the "License"\);
(?:Copyright \d{4} Intel Corporation
|Copyright contributors to the oneDAL project
|Copyright \d{4} University of Salerno
)+Licensed under the Apache License, Version 2\.0 \(the "License"\);
you may not use this file except in compliance with the License\.
You may obtain a copy of the License at

Expand Down
5 changes: 5 additions & 0 deletions cpp/oneapi/dal/backend/common.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -564,6 +564,11 @@ inline std::int64_t device_max_sg_size(const sycl::queue& q) {
return dal::detail::integral_cast<std::int64_t>(*result_iter);
}

inline std::int64_t device_max_sg_count(const sycl::queue& q) {
const auto res = q.get_device().template get_info<sycl::info::device::max_num_sub_groups>();
return dal::detail::integral_cast<std::int64_t>(res);
}

inline std::int64_t propose_wg_size(const sycl::queue& q) {
// TODO: a temporary solution that limits work item count used on the device.
// Needs to change to more smart logic in the future.
Expand Down
2 changes: 2 additions & 0 deletions cpp/oneapi/dal/backend/primitives/BUILD
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@ dal_collect_modules(
"lapack",
"optimizers",
"objective_function",
"frontier",
"placement",
"reduction",
"regression",
Expand Down Expand Up @@ -88,6 +89,7 @@ dal_collect_test_suites(
"lapack",
"optimizers",
"objective_function",
"frontier",
"placement",
"reduction",
"regression",
Expand Down
20 changes: 20 additions & 0 deletions cpp/oneapi/dal/backend/primitives/frontier.hpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
/*******************************************************************************
* Copyright contributors to the oneDAL project
* Copyright 2025 University of Salerno
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*******************************************************************************/

#include "oneapi/dal/backend/primitives/frontier/frontier.hpp"
#include "oneapi/dal/backend/primitives/frontier/advance.hpp"
#include "oneapi/dal/backend/primitives/frontier/graph.hpp"
31 changes: 31 additions & 0 deletions cpp/oneapi/dal/backend/primitives/frontier/BUILD
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
package(default_visibility = ["//visibility:public"])
load("@onedal//dev/bazel:dal.bzl",
"dal_module",
"dal_test_suite",
)

dal_module (
name = "frontier",
auto = True,
dal_deps = [
"@onedal//cpp/oneapi/dal/backend/primitives:common",
],
)

dal_test_suite (
name = "tests",
framework = "catch2",
compile_as = [ "dpc++" ],
private = True,
hdrs = glob([
"test/*.hpp",
]),
srcs = glob([
"test/*_dpc.cpp",
], exclude=[
"test/*perf*.cpp",
]),
dal_deps = [
":frontier",
],
)
Loading
Loading