Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Serial] Add dynamic exclusive variable sizes #625

Merged

Conversation

noelchalmers
Copy link
Contributor

Description

Adds Dynamic @exclusive sizes, closing #121.

When using @exclusives in Serial and OpenMP, OCCA's current behavior is to emulate thread-private variables by turning the @exclusive variable into a fixed-size array of length 256. The new behavior is as follows:

  1. Default array length is now 1024 (to conform with GPU backends)
  2. If @max_inner_dims is specified in the @outer block containing the @exclusive, the array length is set to @max_inner_dims.
  3. If the @inner block sizes are known at compile time, the array length is set to this size.
  4. If the size determined in 3 is larger than the size determined in 2, an error is thrown.

@noelchalmers noelchalmers linked an issue Sep 30, 2022 that may be closed by this pull request
@codecov
Copy link

codecov bot commented Sep 30, 2022

Codecov Report

Merging #625 (2227a5e) into development (50a8a9b) will decrease coverage by 0.23%.
The diff coverage is 0.00%.

Additional details and impacted files

Impacted file tree graph

@@               Coverage Diff               @@
##           development     #625      +/-   ##
===============================================
- Coverage        77.28%   77.04%   -0.24%     
===============================================
  Files              265      265              
  Lines            19570    19634      +64     
===============================================
+ Hits             15124    15127       +3     
- Misses            4446     4507      +61     
Impacted Files Coverage Δ
src/occa/internal/lang/modes/serial.cpp 29.38% <0.00%> (-12.23%) ⬇️
src/occa/internal/utils/sys.cpp 76.88% <0.00%> (+0.10%) ⬆️
src/occa/internal/lang/specialMacros.cpp 60.26% <0.00%> (+0.66%) ⬆️

@kris-rowe kris-rowe merged commit f5e4972 into libocca:development Oct 3, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Dynamic @exclusive sizes
2 participants