Update to new nomenclature#17
Merged
Merged
Conversation
Add a compiled-doctest harness (docs/doctest/extract.py + compile_check.ps1): extracts every ```cpp block into a per-block-namespaced TU and compiles it with the real clio_ctp build flags (vcvars + response file). A passing compile is what makes an example "directly tested". Rewrite all 6 ctp-types guides (atomic, bitfield, ring_buffer, string, unordered_map, vector) so every example compiles, sourcing setup/usage from the actual unit tests: - string: ctp::string (nonexistent) -> ctp::priv::string<AllocT> with the test's SimpleHeapAllocator. - unordered_map: drop nonexistent .at(); real InsertResult<T> return; find/[]. - vector: real ArenaAllocator + MallocBackend / SimpleHeapAllocator setup from the tests instead of placeholder AllocT. - ring_buffer: stop redefining header types (RingQueueFlag/RingBufferEntry); add the test's allocator/backend setup. - atomic: fix void->int (std_atomic::exchange returns void), add missing includes, drop broken post-increment/decrement (operator++/--(int) reference a later alias -> C3861 under MSVC) and rocm_atomic (GPU-pass only). - bitfield: replace __builtin_popcount with std::popcount; abitfield64_t (nonexistent) -> abitfield<uint64_t>; fix precedence + CopyBits/UnsetBits prose. Verified: extract + compile_check report 6/6 PASS. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
All 7 ctp util guides (config_parsing, dynamic_libraries, environment_variables, logging, singleton, system_introspection, timer) now compile (68 blocks, 7/7 PASS via docs/doctest), with examples sourced from the real headers + unit tests. Major corrections of invented/stale APIs: - logging: HILOG/HELOG don't exist (only HLOG/HIPRINT); wrong log-level values; nonexistent CTP_LOG_EXCLUDE -> real CTP_LOG_LEVEL; invented cuda/hip error calls. - dynamic_libraries: replaced POSIX/Win32-raw code (opendir/stat/readlink/ WIN32_FIND_DATA) with the real ctp::SharedLibrary + SystemInfo helpers. - singleton: no EasySingleton; removed fictional includes; macro blocks made self-contained. - system_introspection / environment_variables: POSIX-only calls (cpu_set_t, getpid, gethostname, struct stat) -> cross-platform SystemInfo/std::filesystem. - config_parsing / timer: cross-block references, wrong elapsed-time direction, GCC-only sin -> std::sin. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Rewrite the remaining ctp guides (allocator, memory_backend, event_manager, lightbeam_networking, local_serialize, thread_system, compression, encryption) so all C++ examples compile against the real headers, sourced from the unit tests. 8/8 PASS via docs/doctest. Major corrections: - legacy namespaces hipc::/hshm:: -> ctp::/ctp::ipc:: (allocator, memory_backend, encrypt, compress). - event_manager: wrong member names (fd vs fd_), Signal signature, Linux-only epoll/read/getpid -> cross-platform. - thread: nonexistent GetThreadTypeName, CTP_THREAD_MODEL_T double-namespace bug. - compress/encrypt: build-optional, usage #if-guarded with signatures verified against headers + tests. - harness: define CTP_ENABLE_ZMQ (ON in the real build) so lightbeam's ZeroMqTransport examples compile. This completes the entire context-transport-primitives doc set (types + util + these) — all examples compile. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Rewrite the runtime base-module guides (admin, bdev, MOD_NAME), the module-test guide, and the reliability guide so all C++ examples compile against the current headers (via docs/doctest with the new -Runtime profile), sourced from the real module code + tests. Major corrections of the pre-refactor chimaera API: - chi::/chimaera:: -> clio::run::, hshm::/hipc:: -> ctp::/ctp::ipc:: - chi::CHIMAERA_INIT(kClient) -> clio::run::CLIO_INIT(RuntimeMode::kClient, true) - Client APIs to current signatures: Admin (AsyncCreatePool/Container, DomainQuery), bdev::Client (AsyncAllocateBlocks/Write/Read/FreeBlocks, PoolQuery, Block, real buffer alloc via CLIO_IPC), MOD_NAME task/coroutine Run(Task*,RunContext&)->TaskResume. - test guide: Catch2/gtest API (TEST_CASE tags, REQUIRE_THROWS, SECTION) -> real simple_test.h macros + SIMPLE_TEST_PROCESS_EXIT, sourced from test_compose.cc. - reliability: RetryEntry now shared_ptr<Task> (RAII), Container recover/migrate callbacks to current signatures. Harness: add a -Runtime profile (clio_run include dirs + CEREAL/LIGHTBEAM defines). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Rewrite all 22 scheduler examples against the current Scheduler API (chimaera/chi:: -> clio::run::): the real pure-virtual contract (ClientMapTask/RuntimeMapTask with ContainerHold, DivideWorkers, AdjustPolling(shared_ptr<Task>&), ScheduleTask), SchedulerFactory::Get(SchedulerType), PredictedStat().io_size_, SetNetLane(send,recv), PoolQuery::Range(offset,count). Sourced from default_sched/local_sched + the autogen-coverage test. 22/22 PASS via docs/doctest -Runtime. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Full rewrite of the GPU client guide (was entirely stale chimaera API): chi::-> clio::run::, CHIMAERA_INIT->CLIO_INIT, gpu manager is clio::run::gpu::IpcManager via CLIO_CPU_IPC->GetGpuIpcManager(); removed deleted gpu::FutureShm/pod_size_ (POD task is self-contained via Task::fut_/FutureInfo, slot = sizeof(TaskT)); cudaMemcpy-style -> ctp::GpuApi::; IpcGpu2Cpu ClientSend/RuntimeSend -> SendIn/ SendOut; handler is TaskResume(shared_ptr<GpuSubmitTask>&) with CLIO_TASK_BODY_*. Device-only code #if-guarded (CUDA/ROCM off in harness); host APIs compiled. PASS. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Rewrite the CTE guides (cte, gpu-cte, gpu-inf-mem) so all C++ examples compile against the current clio_cte headers (via docs/doctest -Cte), sourced from the core/gpu_vector/uvm tests. Corrections: - namespaces: chi::->clio::run::, clio_cte::core->clio::cte::core, clio_cte::uvm->clio::cte::uvm, hipc::/hshm::->ctp::ipc::/ctp:: - init/globals: WRP_CTE_CLIENT_INIT->CLIO_CTE_CLIENT_INIT, CHIMAERA_INIT->CLIO_INIT - real AsyncPutBlob/AsyncGetBlob signatures (Context param, flags order), buffer via CLIO_IPC->AllocateBuffer -> FullPtr<char>, .shm_.Cast<void>() - task result field fixes (tag_size_, entries_, blob_names_, target_names_...); removed nonexistent CteOp cases / CteTelemetry.blob_id_ - gpu-cte: PodPutBlobTask/PodGetBlobTask (POD variants), Task::fut_ not FutureShm - gpu-inf-mem: GpuVmm (CUdeviceptr/CUresult), CUDA-only code #if-guarded - reference-only class-def blocks -> ```text (can't compile beside real headers) Harness: add -Cte/-Cae profiles (cte/cae include dirs). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Rewrite the CAE guides (omni, overview) so all C++ examples compile against the current clio_cae headers (via docs/doctest -Cae), sourced from the CAE unit tests. Corrections: clio_cae::core->clio::cae::core, chi::->clio::run::, hshm::->ctp::, WRP_CAE_CLIENT_INIT->CLIO_CAE_CLIENT_INIT; real Client(kCaePoolId) + AsyncParseOmni/AsyncProcessHdf5Dataset returning Future<T>; BaseAssimilator Schedule(const AssimilationCtx&, int&) override. Reference-only class-def blocks -> ```text with corrected content. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Rewrite the 124-block module-authoring guide so every C++ example compiles against the current headers (99 real compiling blocks; ~25 signature-stub / conceptual / intentionally-wrong blocks reclassified to ```text). Sourced from the real MOD_NAME template module. Major corrections of the pre-refactor API: - chi::/chimaera:: -> clio::run::, hipc::/hshm:: -> ctp::ipc::/ctp:: - CHIMAERA_INIT -> CLIO_INIT; CHI_TASK_CC->CLIO_TASK_CC; CHI_IPC->CLIO_CPU_IPC - runtime handlers: void X(FullPtr<T>, RunContext&) -> TaskResume X(shared_ptr<T>&) with CLIO_TASK_BODY_BEGIN/CLIO_CO_AWAIT/CLIO_CO_RETURN/CLIO_TASK_BODY_END - results via GetReturnCode()/SetReturnCode(); Aggregate->AggregateOut; ScheduleTask hook replaces the dead ExecMode two-phase dynamic-scheduling section; RAII cleanup replaces DelTask; real BULK_EXPOSE/BULK_XFER bulk transfer. - gotcha: blocks must NOT reopen namespace clio::run::MOD_NAME (the harness's per-block namespace would shadow ::clio::run) — define at block scope, qualified. Completes the entire SDK C++ example set: all 34 guides across ctp/runtime/cte/cae compile against the real headers, examples sourced from real code + tests. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Lead the Conda install tab with Miniconda's binary installer + `conda install -c iowarp -c conda-forge iowarp-core` (the prebuilt package on the iowarp Anaconda channel). Keep building from source as an optional `conda build installers/conda/` flow (IOWARP_PRESET selects a CMake preset) instead of the removed install.sh. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…containers) Expand the developer guide's container section into a from-scratch walkthrough: what a Dev Container is, installing Docker per-OS (Docker Desktop + WSL2 on Windows, Docker Desktop on macOS, Docker Engine on Linux), installing the VS Code / Cursor Dev Containers extension, opening/reopening in a container, all three containers (cpu, nvidia-gpu, ml-inference), GPU setup, and troubleshooting. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.