Skip to content

make disjoint pool a C structure#898

Merged
lplewa merged 12 commits into
oneapi-src:mainfrom
bratpiorka:rrudnick_disjoint_c
Feb 18, 2025
Merged

make disjoint pool a C structure#898
lplewa merged 12 commits into
oneapi-src:mainfrom
bratpiorka:rrudnick_disjoint_c

Conversation

@bratpiorka

@bratpiorka bratpiorka commented Nov 14, 2024

Copy link
Copy Markdown
Contributor

make Disjoint Pool a C structure. With this PR:

  • Disjoint Pool code is written in C - NOTE: there are no changes in any algorithm - any optimizations should be done in separate PRs
  • it is no longer a lib - it is always added to UMF lib sources
  • UMF_BUILD_LIBUMF_POOL_DISJOINT option is removed
  • few white-box test cases where we look at internal structures are added - more could be added in separate PRs

@bratpiorka bratpiorka requested a review from a team as a code owner November 14, 2024 13:30
@lukaszstolarczuk lukaszstolarczuk marked this pull request as draft November 14, 2024 13:39
@bratpiorka bratpiorka force-pushed the rrudnick_disjoint_c branch 3 times, most recently from 97807f1 to 3521be5 Compare November 18, 2024 10:14
@bratpiorka bratpiorka force-pushed the rrudnick_disjoint_c branch 8 times, most recently from 17d00a2 to 9b22721 Compare November 27, 2024 09:57
Comment thread src/pool/pool_disjoint.c Fixed
Comment thread src/pool/pool_disjoint.c Fixed
@bratpiorka bratpiorka force-pushed the rrudnick_disjoint_c branch 14 times, most recently from cdad0f1 to 4a8935a Compare December 6, 2024 15:03
@bratpiorka bratpiorka force-pushed the rrudnick_disjoint_c branch 8 times, most recently from eb10fca to 8733b28 Compare January 25, 2025 14:36
Comment thread .github/workflows/reusable_multi_numa.yml Outdated
Comment thread test/supp/helgrind-umf_test-disjoint_pool.supp Outdated
Comment thread src/base_alloc/base_alloc_global.c Outdated
Comment thread src/base_alloc/base_alloc_global.c
@ldorau

ldorau commented Feb 17, 2025

Copy link
Copy Markdown
Contributor

@bratpiorka Please rebase and resolve merge conflicts

@bratpiorka

Copy link
Copy Markdown
Contributor Author

@bratpiorka Please rebase and resolve merge conflicts

done

bratpiorka and others added 12 commits February 18, 2025 11:08
Signed-off-by: Łukasz Plewa <lukasz.plewa@intel.com>
Signed-off-by: Łukasz Plewa <lukasz.plewa@intel.com>
Signed-off-by: Łukasz Plewa <lukasz.plewa@intel.com>
Instead having two modes - we can have only chunked slabs and full
slabs are just a chunked slab with one chunk. This removes extra
complexity in the code. Should not have performance impact, as we
added few extra steps for big allocations, but removed extra branch in
the code.

Signed-off-by: Łukasz Plewa <lukasz.plewa@intel.com>
There is no reason to do so. This is only extra performance overhead.

Signed-off-by: Łukasz Plewa <lukasz.plewa@intel.com>
this improves redability, and reduces "spaghetti" in the code

Signed-off-by: Łukasz Plewa <lukasz.plewa@intel.com>
this function has nothing releated to capacity.

input parameter to disjointpool should also be renamed, but this is
topic for the diffrent pull request

Signed-off-by: Łukasz Plewa <lukasz.plewa@intel.com>
@ldorau

ldorau commented Feb 18, 2025

Copy link
Copy Markdown
Contributor

Hanging on the Windows CUDA build :-) ...

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.

7 participants