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

Deprecate / Remove old allocators #730

Open
4 tasks
alliepiper opened this issue Apr 6, 2020 · 0 comments
Open
4 tasks

Deprecate / Remove old allocators #730

alliepiper opened this issue Apr 6, 2020 · 0 comments
Labels
thrust For all items related to Thrust.

Comments

@alliepiper
Copy link
Collaborator

alliepiper commented Apr 6, 2020

Everything should be going through the new MR allocation layer.

Overview

Construct Resolution Replacement
device_new_allocator Deprecate device_allocator
device_malloc_allocator Deprecate device_allocator
cuda::experimental::pinned_allocator Remove universal_host_pinned_allocator
detail::temporary_allocator Remove thrust::async style temporary allocation
detail::temporary_array Remove thrust::async style temporary allocation
thrust::(get/return)_temporary_buffer Remove thrust::async style temporary allocation
detail::malloc_allocator Remove host_allocator
detail::tagged_allocator Remove (None, impl detail)
device_free/device_malloc Keep N/A
device_new/device_delete Keep N/A

Usages:

device_new_allocator

Unused.

device_malloc_allocator

  • vector.cu (Unused include?)
  • uninitialized_copy.cu (Unused include?)
  • uninitialized_fill.cu (Unused include?)
  • allocator.cu
  • vector_insert.cu

device_new

  • ASSERT_STATIC_ASSERT in runtime_static_assert
  • device_make_unique

device_malloc

  • device_new
  • testing/for_each.cu
  • unwrap_pointer.cu
  • examples/device_ptr.cu
  • testing/adjacent_difference.cu
  • testing/copy.cu
  • cpp/adjacent_difference.cu
  • cuda/adjacent_difference.cu
  • testing/equal.cu
  • testing/inner_product.cu
  • testing/scan.cu (unused?)
  • testing/uninitialized_fill.cu

cuda::experimental::pinned_allocator

  • pinned_allocator.cu

temporary_allocator

  • temporary_array

get_temporary_buffer

  • execute_with_allocator.h defines thrust::detail::(get|return)_temporary_buffer
  • Doc'd in thrust/memory.h
  • dispatch logic in detail/adl/temporary_buffer.h
  • detail/generic/temporary_buffer.(h|inl)
  • custom_temporary_allocation.cu (mentioned in comments, but doesn't seem to actually be used at a glance)
  • allocator_aware_policies.cu
  • cuda/memory.cu
  • testing/memory.cu

Unresolved Issues

  • Do we want to keep the device_new/free/malloc functions?
  • Replacement for temporary_allocator?
  • Keep or remove temporary_array?
  • Keep or remove (get|return)_temporary_buffer?
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
thrust For all items related to Thrust.
Projects
Status: Todo
Development

No branches or pull requests

2 participants