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

malloc: various changes and optimizations #16990

Merged
merged 1 commit into from
Jun 20, 2024
Merged

Conversation

reusee
Copy link
Contributor

@reusee reusee commented Jun 19, 2024

What type of PR is this?

  • API-change
  • BUG
  • Improvement
  • Documentation
  • Feature
  • Test and CI
  • Code Refactoring

Which issue(s) this PR fixes:

issue #16573

What this PR does / why we need it:

malloc: add checked allocator

malloc: wrap checked allocator in default allocator

malloc: add hints

malloc: remove checked deallocator

malloc: add DoNotReuse hint to checked deallocator

malloc: add stack info to checked allocator

malloc: more tests for check allocator

malloc: add allocator config

malloc: check double free before calling upstream in CheckedAllocator deallocation

malloc: do not use default allocator in tests to avoid dependency loop

malloc: fix stacktrace

malloc: more detail infos for checked allocator panic messages

malloc: show pointer address in checked allocator panic messages

malloc: show allocated size in checked allocator panic messages

malloc: fix checked allocator finalizer

fileservice: add fuzzFS

fileservice: refine TestFuzzingDiskS3

malloc: add NoClear hint

malloc: refine ClassAllocator tests

malloc: add FixedSizeAllocator

malloc: add FixedSizeSyncPoolAllocator

malloc: use fixedSizeSyncPoolAllocator as go allocator by default

fileservice: fix missing release in tests

@matrix-meow matrix-meow added the size/L Denotes a PR that changes [500,999] lines label Jun 19, 2024
@reusee reusee force-pushed the mallocopts branch 3 times, most recently from 74e1b50 to 08497df Compare June 19, 2024 09:23
@matrix-meow matrix-meow added size/XL Denotes a PR that changes [1000, 1999] lines and removed size/L Denotes a PR that changes [500,999] lines labels Jun 19, 2024
@reusee reusee force-pushed the mallocopts branch 2 times, most recently from b2435b2 to 22c3a27 Compare June 19, 2024 15:06
@reusee reusee changed the title malloc: add checked allocator malloc: various changes and optimizations Jun 19, 2024
@reusee reusee force-pushed the mallocopts branch 3 times, most recently from 217f021 to 8a9c308 Compare June 20, 2024 02:01
malloc: add checked allocator

malloc: wrap checked allocator in default allocator

malloc: add hints

malloc: remove checked deallocator

malloc: add DoNotReuse hint to checked deallocator

malloc: add stack info to checked allocator

malloc: more tests for check allocator

malloc: add allocator config

malloc: check double free before calling upstream in CheckedAllocator deallocation

malloc: do not use default allocator in tests to avoid dependency loop

malloc: fix stacktrace

malloc: more detail infos for checked allocator panic messages

malloc: show pointer address in checked allocator panic messages

malloc: show allocated size in checked allocator panic messages

malloc: fix checked allocator finalizer

fileservice: add fuzzFS

fileservice: refine TestFuzzingDiskS3

malloc: add NoClear hint

malloc: refine ClassAllocator tests

malloc: add FixedSizeAllocator

malloc: add FixedSizeSyncPoolAllocator

malloc: use fixedSizeSyncPoolAllocator as go allocator by default

fileservice: fix missing release in tests

malloc: remove PureGoClassAllocator

malloc: minor clean-ups
@mergify mergify bot merged commit 5cba9c5 into matrixorigin:main Jun 20, 2024
16 of 18 checks passed
reusee added a commit to reusee/matrixone that referenced this pull request Jun 21, 2024
malloc: add checked allocator

malloc: wrap checked allocator in default allocator

malloc: add hints

malloc: remove checked deallocator

malloc: add DoNotReuse hint to checked deallocator

malloc: add stack info to checked allocator

malloc: more tests for check allocator

malloc: add allocator config

malloc: check double free before calling upstream in CheckedAllocator deallocation

malloc: do not use default allocator in tests to avoid dependency loop

malloc: fix stacktrace

malloc: more detail infos for checked allocator panic messages

malloc: show pointer address in checked allocator panic messages

malloc: show allocated size in checked allocator panic messages

malloc: fix checked allocator finalizer

fileservice: add fuzzFS

fileservice: refine TestFuzzingDiskS3

malloc: add NoClear hint

malloc: refine ClassAllocator tests

malloc: add FixedSizeAllocator

malloc: add FixedSizeSyncPoolAllocator

malloc: use fixedSizeSyncPoolAllocator as go allocator by default

fileservice: fix missing release in tests
reusee added a commit to reusee/matrixone that referenced this pull request Jun 21, 2024
malloc: add checked allocator

malloc: wrap checked allocator in default allocator

malloc: add hints

malloc: remove checked deallocator

malloc: add DoNotReuse hint to checked deallocator

malloc: add stack info to checked allocator

malloc: more tests for check allocator

malloc: add allocator config

malloc: check double free before calling upstream in CheckedAllocator deallocation

malloc: do not use default allocator in tests to avoid dependency loop

malloc: fix stacktrace

malloc: more detail infos for checked allocator panic messages

malloc: show pointer address in checked allocator panic messages

malloc: show allocated size in checked allocator panic messages

malloc: fix checked allocator finalizer

fileservice: add fuzzFS

fileservice: refine TestFuzzingDiskS3

malloc: add NoClear hint

malloc: refine ClassAllocator tests

malloc: add FixedSizeAllocator

malloc: add FixedSizeSyncPoolAllocator

malloc: use fixedSizeSyncPoolAllocator as go allocator by default

fileservice: fix missing release in tests
reusee added a commit to reusee/matrixone that referenced this pull request Jun 29, 2024
malloc: add checked allocator

malloc: wrap checked allocator in default allocator

malloc: add hints

malloc: remove checked deallocator

malloc: add DoNotReuse hint to checked deallocator

malloc: add stack info to checked allocator

malloc: more tests for check allocator

malloc: add allocator config

malloc: check double free before calling upstream in CheckedAllocator deallocation

malloc: do not use default allocator in tests to avoid dependency loop

malloc: fix stacktrace

malloc: more detail infos for checked allocator panic messages

malloc: show pointer address in checked allocator panic messages

malloc: show allocated size in checked allocator panic messages

malloc: fix checked allocator finalizer

fileservice: add fuzzFS

fileservice: refine TestFuzzingDiskS3

malloc: add NoClear hint

malloc: refine ClassAllocator tests

malloc: add FixedSizeAllocator

malloc: add FixedSizeSyncPoolAllocator

malloc: use fixedSizeSyncPoolAllocator as go allocator by default

fileservice: fix missing release in tests

Approved by: @zhangxu19830126
reusee added a commit to reusee/matrixone that referenced this pull request Jun 29, 2024
malloc: return []byte instead of unsafe.Pointer in Allocator.Allocate

malloc: remove pointer param from Deallocator.Deallocate

malloc: rename argumentedFuncDeallocator to closureDeallocator; add closureDeallocatorPool

malloc: expose closure allocator and pool

malloc: add LeaksTrackingAllocator

malloc: optimize sharded counter to avoid false sharing

Approved by: @zhangxu19830126

malloc: various changes and optimizations  (matrixorigin#16990)

malloc: add checked allocator

malloc: wrap checked allocator in default allocator

malloc: add hints

malloc: remove checked deallocator

malloc: add DoNotReuse hint to checked deallocator

malloc: add stack info to checked allocator

malloc: more tests for check allocator

malloc: add allocator config

malloc: check double free before calling upstream in CheckedAllocator deallocation

malloc: do not use default allocator in tests to avoid dependency loop

malloc: fix stacktrace

malloc: more detail infos for checked allocator panic messages

malloc: show pointer address in checked allocator panic messages

malloc: show allocated size in checked allocator panic messages

malloc: fix checked allocator finalizer

fileservice: add fuzzFS

fileservice: refine TestFuzzingDiskS3

malloc: add NoClear hint

malloc: refine ClassAllocator tests

malloc: add FixedSizeAllocator

malloc: add FixedSizeSyncPoolAllocator

malloc: use fixedSizeSyncPoolAllocator as go allocator by default

fileservice: fix missing release in tests

Approved by: @zhangxu19830126
reusee added a commit to reusee/matrixone that referenced this pull request Jul 3, 2024
malloc: return []byte instead of unsafe.Pointer in Allocator.Allocate

malloc: remove pointer param from Deallocator.Deallocate

malloc: rename argumentedFuncDeallocator to closureDeallocator; add closureDeallocatorPool

malloc: expose closure allocator and pool

malloc: add LeaksTrackingAllocator

malloc: optimize sharded counter to avoid false sharing

Approved by: @zhangxu19830126

malloc: various changes and optimizations  (matrixorigin#16990)

malloc: add checked allocator

malloc: wrap checked allocator in default allocator

malloc: add hints

malloc: remove checked deallocator

malloc: add DoNotReuse hint to checked deallocator

malloc: add stack info to checked allocator

malloc: more tests for check allocator

malloc: add allocator config

malloc: check double free before calling upstream in CheckedAllocator deallocation

malloc: do not use default allocator in tests to avoid dependency loop

malloc: fix stacktrace

malloc: more detail infos for checked allocator panic messages

malloc: show pointer address in checked allocator panic messages

malloc: show allocated size in checked allocator panic messages

malloc: fix checked allocator finalizer

fileservice: add fuzzFS

fileservice: refine TestFuzzingDiskS3

malloc: add NoClear hint

malloc: refine ClassAllocator tests

malloc: add FixedSizeAllocator

malloc: add FixedSizeSyncPoolAllocator

malloc: use fixedSizeSyncPoolAllocator as go allocator by default

fileservice: fix missing release in tests

Approved by: @zhangxu19830126
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/enhancement size/XL Denotes a PR that changes [1000, 1999] lines
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants