Skip to content

Commit f99c392

Browse files
author
Raghuveer Devulapalli
authored
Merge pull request #167 from sterrettm2/taskwait
Fixes bug with nested OpenMP, fixed task threshold, extended tests range
2 parents c61ce8f + 5cc9216 commit f99c392

File tree

6 files changed

+24
-16
lines changed

6 files changed

+24
-16
lines changed

.github/workflows/build-numpy.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ jobs:
1414
np-multiarray-tgl:
1515

1616
if: github.repository == 'intel/x86-simd-sort'
17-
runs-on: intel-ubuntu-latest
17+
runs-on: intel-ubuntu-24.04
1818

1919
steps:
2020
- name: Checkout x86-simd-sort
@@ -80,7 +80,7 @@ jobs:
8080
np-multiarray-spr:
8181

8282
if: github.repository == 'intel/x86-simd-sort'
83-
runs-on: intel-ubuntu-latest
83+
runs-on: intel-ubuntu-24.04
8484

8585
steps:
8686
- name: Checkout x86-simd-sort

.github/workflows/c-cpp.yml

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ permissions: read-all
1111
jobs:
1212
SKL-gcc9:
1313

14-
runs-on: intel-ubuntu-latest
14+
runs-on: intel-ubuntu-24.04
1515

1616
steps:
1717
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
@@ -41,7 +41,7 @@ jobs:
4141

4242
SKX-gcc10:
4343

44-
runs-on: intel-ubuntu-latest
44+
runs-on: intel-ubuntu-24.04
4545

4646
steps:
4747
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
@@ -71,7 +71,7 @@ jobs:
7171

7272
TGL-gcc11:
7373

74-
runs-on: intel-ubuntu-latest
74+
runs-on: intel-ubuntu-24.04
7575

7676
steps:
7777
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
@@ -100,7 +100,7 @@ jobs:
100100

101101
SPR-gcc13:
102102

103-
runs-on: intel-ubuntu-latest
103+
runs-on: intel-ubuntu-24.04
104104

105105
steps:
106106
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
@@ -137,7 +137,7 @@ jobs:
137137

138138
SKX-SKL-openmp:
139139

140-
runs-on: intel-ubuntu-latest
140+
runs-on: intel-ubuntu-24.04
141141

142142
steps:
143143
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
@@ -169,7 +169,7 @@ jobs:
169169
170170
SPR-gcc13-special-cases:
171171

172-
runs-on: intel-ubuntu-latest
172+
runs-on: intel-ubuntu-24.04
173173

174174
steps:
175175
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
@@ -204,7 +204,7 @@ jobs:
204204

205205
manylinux-32bit:
206206

207-
runs-on: intel-ubuntu-latest
207+
runs-on: intel-ubuntu-24.04
208208

209209
steps:
210210
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
@@ -216,7 +216,7 @@ jobs:
216216
217217
SPR-icpx:
218218

219-
runs-on: intel-ubuntu-latest
219+
runs-on: intel-ubuntu-24.04
220220

221221
steps:
222222
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
@@ -226,8 +226,7 @@ jobs:
226226
echo "deb https://apt.repos.intel.com/oneapi all main" | sudo tee /etc/apt/sources.list.d/oneAPI.list
227227
sudo add-apt-repository -y "deb https://apt.repos.intel.com/oneapi all main"
228228
sudo apt update --allow-insecure-repositories
229-
sudo apt --allow-unauthenticated -y install intel-oneapi-compiler-dpcpp-cpp libgtest-dev curl git python3-pip
230-
sudo pip3 install meson ninja
229+
sudo apt --allow-unauthenticated -y install intel-oneapi-compiler-dpcpp-cpp libgtest-dev curl git python3-pip meson
231230
232231
- name: Install Intel SDE
233232
run: |

.github/workflows/linting.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ permissions: read-all
1111
jobs:
1212
clang-format:
1313

14-
runs-on: intel-ubuntu-latest
14+
runs-on: intel-ubuntu-24.04
1515

1616
steps:
1717
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1

.github/workflows/scorecard.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ jobs:
2222

2323
name: Scorecard analysis
2424
if: github.repository == 'intel/x86-simd-sort'
25-
runs-on: ubuntu-latest
25+
runs-on: intel-ubuntu-24.04
2626
permissions:
2727
# Needed to upload the results to code-scanning dashboard.
2828
security-events: write

src/xss-common-keyvaluesort.hpp

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -559,9 +559,14 @@ X86_SIMD_SORT_INLINE void xss_qsort_kv(
559559
keys, indexes, 0, arrsize - 1, maxiters, task_threshold);
560560
}
561561
else {
562-
kvsort_<keytype, valtype>(
563-
keys, indexes, 0, arrsize - 1, maxiters, 0);
562+
kvsort_<keytype, valtype>(keys,
563+
indexes,
564+
0,
565+
arrsize - 1,
566+
maxiters,
567+
std::numeric_limits<arrsize_t>::max());
564568
}
569+
#pragma omp taskwait
565570
#else
566571
kvsort_<keytype, valtype>(keys, indexes, 0, arrsize - 1, maxiters, 0);
567572
#endif

tests/test-keyvalue.cpp

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,10 @@ class simdkvsort : public ::testing::Test {
1515
simdkvsort()
1616
{
1717
std::iota(arrsize.begin(), arrsize.end(), 1);
18+
arrsize.push_back(10'000);
19+
arrsize.push_back(100'000);
20+
arrsize.push_back(1'000'000);
21+
1822
arrtype = {"random",
1923
"constant",
2024
"sorted",

0 commit comments

Comments
 (0)