UPC++ feature list
Issue #1
resolved
UPC++
Core
- Async Tasks (should rewrite using variadic templates) <async.h, async_templates.h, async_impl*.h>
- Synchronous and Asynchronous Copies <async_copy.h>
- Events <event.h>
- Global Pointers <global_ptr.h>
- Shared Locks <lock.h>
- Shared Arrays <shared_array.h>
- Shared Variables <shared_var.h>
- Memory Management <upcxx_internal.h>
- Init/Finalize <upcxx_runtime.h>
- Ranks and Barriers <upcxx_runtime.h>
Questionable
- Collectives <collective.h, upcxx_types.h>
- Global References and memberof <global_ref.h>
Internal
- Groups? <group.h>
- Queues <queue.h>
- Utils <utils.h>
Library
- Multidimensional Arrays <array.h, upcxx-arrays/>
- Timers <timer.h>
Extended/Experimental
- Safe Broadcast <broadcast.h, interfaces.h, interfaces_internal.h>
- Finish <finish.h>
- Fork/Join <forkjoin.h>
- Ranges <range.h>
- Higher-Level Reductions <reduce.h>
- Teams <team.h>
Multidimensional Arrays
Core
- Domain Library
- Lambda Foreach
- Point Indexing
- Synchronous and Asynchronous Copies
- Exchange
- Scatter/Gather
Extended/Experimental
- Bounds Checking
- Stridedness Specializations
- Padding
- Vector Broadcast
- Storage/Base Pointer
- Chained Indexing
- Function-Call Indexing
Deprecated
- NBI Copy
- Macro Indexing
- Foreach Specializations
- POINT, RECTDOMAIN, and ARRAY macros
Comments (2)
-
-
- changed status to resolved
This issue mostly applied to v0.1.
Spec 1.0 draft 2 serves as both specification and feature list, including some features that have yet to be fully specified.
- Log in to comment
while all interesting, I think we are now working in a smaller set of core features with a smaller API.