1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60
|
.. meta::
:description: rocPRIM documentation and API reference library
:keywords: rocPRIM, ROCm, API, documentation
.. _intrinsics:
********************************************************************
Intrinsics
********************************************************************
Bitwise
========
.. doxygenfunction:: rocprim::get_bit(int x, int i)
.. doxygenfunction:: rocprim::bit_count(unsigned int x)
.. doxygenfunction:: rocprim::bit_count(unsigned long long x)
.. doxygenfunction:: rocprim::ctz(unsigned int x)
.. doxygenfunction:: rocprim::ctz(unsigned long long x)
Warp size
===========
.. doxygenfunction:: rocprim::warp_size()
.. doxygenfunction:: rocprim::host_warp_size(const int device_id, unsigned int& warp_size)
.. doxygenfunction:: rocprim::host_warp_size(const hipStream_t stream, unsigned int& warp_size)
.. doxygenfunction:: rocprim::device_warp_size()
Lane and Warp ID
=================
.. doxygengroup:: intrinsicsmodule_warp_id
:content-only:
Flat ID
==========
.. doxygengroup:: intrinsicsmodule_flat_id
:content-only:
Flat Size
===========
.. doxygenfunction:: rocprim::flat_block_size()
.. doxygenfunction:: rocprim::flat_tile_size()
Synchronization
=================
.. doxygenfunction:: rocprim::syncthreads()
.. doxygenfunction:: rocprim::wave_barrier()
Active threads
==================
.. doxygenfunction:: rocprim::ballot (int predicate)
.. doxygenfunction:: rocprim::group_elect(lane_mask_type mask)
.. doxygenfunction:: rocprim::masked_bit_count (lane_mask_type x, unsigned int add=0)
.. doxygenfunction:: rocprim::match_any(unsigned int label, bool valid = true)
.. doxygenfunction:: rocprim::match_any(unsigned int label, unsigned int label_bits, bool valid = true)
|