Official NVIDIA-authored guidance for NVIDIA cuDF GPU DataFrames, pandas acceleration, dask-cuDF, ETL, joins, groupby, CSV/Parquet I/O, nullable semantics, and multi-GPU DataFrame workloads.
日本語の概要は準備中です。原文の説明を表示しています。
Use when NVSHMEM beginners want a tutorial-style overview on assessment, mental models, first C/C++ or Python NVSHMEM programs, compilation, launching, and next steps.
日本語の概要は準備中です。原文の説明を表示しています。
インストール方法を見るインストールする前に、エージェントに与えられる指示の中身を確認できます。
Guide a beginner to the next useful action. Teach the stable mental model, program structure, build pattern, and launch pattern directly. Route installation, version-sensitive variants, advanced integrations, and failures to the appropriate specialist skill.
$nvshmem-install, $nvshmem-docs, and $nvshmem-troubleshoot-and-report-bugs available for complete installation, version-specific, and failure handoffs. If a specialist skill is unavailable, follow the documented fallback instead of inventing current details.Default to explaining the workflow and printing commands for the user to run. Do not compile, launch a program, submit a scheduler job, allocate resources, or modify the environment unless the user explicitly asks for execution. Treat requests to learn, get started, or receive help running a program as requests for guidance, not execution approval.
When the requested stage is clear, skip the menu and handle that stage. Otherwise ask what the user wants to do and present all options in one response:
For option 7, first determine whether NVSHMEM fits the intended communication pattern. Then ask whether NVSHMEM is installed, whether an example has run successfully, and whether source code already exists. Recommend the mental model when the user is completely new, installation when NVSHMEM is absent, a precompiled example after installation, program design when no source exists, and compilation when source is ready.
Start from the application's communication needs rather than from a list of APIs. Describe NVSHMEM as a strong fit when several of these conditions apply:
Give representative workload patterns without claiming that NVSHMEM is mandatory for them:
Explain when another model may be simpler:
First determine whether the prompt already contains enough communication detail to assess fit. If it does, immediately conclude with one of strong fit, possible fit, or likely simpler with another model and explain the deciding factors; do not defer the recommendation behind a checklist of questions. Otherwise ask only for the missing decision-critical facts: where communication is initiated, whether it is fine- or coarse-grained, which operations dominate, whether communication must occur inside kernels, and what GPU/node topology is targeted. Then give the same explicit conclusion. Link to the official NVSHMEM Introduction and Advantages.
Read references/mental-model.md completely before teaching the conceptual path. Explain the mental model without API-name clutter and use its illustrative ring shift when a concrete example would help. Before introducing C/C++ primitives, read references/basic-api-calls.md completely and present only the API groups relevant to the user's goal. For a Python request, also read references/nvshmem4py-programs.md before outlining the program lifecycle or launch workflow. Keep examples framed as teaching aids rather than environment-specific recipes.
Collect only the context required by the selected path. Do not ask for every environment detail up front.
Before invoking $nvshmem-install, follow this intake order: resolve the requested version or latest, ask whether the user needs C/C++, Python, or both, then at step 3 ask whether the user is an administrator on the target system with root or sudo rights. On a managed cluster, also ask whether the user is authorized to change the compute-node image or shared software stack. Do not infer either answer from shell access, package-manager availability, or target type.
Invoke $nvshmem-install. Pass the administrator and target-scope authority status together with the requested API or language, target environment, preferred install method, version policy, and whether the user needs runtime files, development headers and libraries, or static linking. For an unprivileged cluster user, do not frame DEB, RPM, APT, DNF, YUM, or another system package path as directly usable; prefer a site module, approved container, compatible user-owned prefix, or a clearly labeled administrator handoff.
Read references/basic-api-calls.md before explaining API-family choices or recommending specific primitives.
Teach this stable structure directly:
nvshmem_init for the basic standalone pattern. Use nvshmemx_init_attr when the application must integrate an MPI, OpenSHMEM, or other bootstrap context.nvshmem_fence to order later operations after earlier operations to the same PE, nvshmem_quiet or its on-stream form for completion, and barriers, signals and waits, or collectives to coordinate PEs.Use the ring-shift example in references/mental-model.md as the first concrete illustration; read that reference before presenting the example.
Read references/nvshmem4py-programs.md completely. Ask only for the Python script path, Python interpreter or environment, NVSHMEM4Py version if known, initialization choice (standalone or MPI), launcher, PE and node counts, and whether the run is local or scheduled.
Teach the same PE, symmetric-memory, one-sided-operation, and completion model as C/C++, then map it to the Python lifecycle: choose and set the local CUDA device, initialize NVSHMEM4Py, collectively create symmetric arrays, perform the required communication and synchronization, free every symmetric array collectively, and finalize. Do not present C/C++ API names as Python APIs.
Invoke $nvshmem-docs with the requested NVSHMEM version or latest before giving Python API names, a runnable code sample, package-version compatibility, framework interoperability, initialization arguments, or exact launch commands. Pass the script path and all known Python, launcher, PE, node, and environment details. Use the documentation result to give a version-matched, user-runnable command shape. Confirm that the selected Python environment, the script, CUDA, NVSHMEM runtime libraries, and the NVSHMEM4Py package are available on every participating node.
When the user supplies a simple NVSHMEM4Py script, use the example in references/nvshmem4py-programs.md to trace its device selection, initialization, symmetric allocation, communication, stream completion, collective cleanup, and launch requirements. Identify missing lifecycle steps or a mismatch between the script's initialization and launcher; do not execute or rewrite the script unless requested.
Start with two PEs on one node and one PE per GPU by default. Require the launcher to propagate the selected Python environment and CUDA/NVSHMEM environment to every PE. Explain the expected per-PE output and validate the small run before suggesting a larger or multi-node run.
Ask for the source path, NVSHMEM installation prefix, target GPU architecture, and whether the project uses a direct nvcc command or CMake. For a standard CUDA source file, explain that the application must enable relocatable device code, include the NVSHMEM headers, search the installed library directory, and link both the host and device libraries.
Provide this command shape after replacing or clearly labeling its variables:
nvcc -rdc=true \
-ccbin g++ \
-gencode="$NVCC_GENCODE" \
-I"$NVSHMEM_HOME/include" \
application.cu \
-L"$NVSHMEM_HOME/lib" \
-lnvshmem_host -lnvshmem_device \
-o application
Explain that NVSHMEM_HOME names the installed prefix and NVCC_GENCODE must select the target GPU architecture. For CMake, prefer the config files installed with NVSHMEM and use find_package in config mode; inspect the installed package before naming an imported target.
After the build command, state that the resulting NVSHMEM binary is still a multi-PE program and must be launched with nvshmrun, mpirun, or srun at a chosen PE count, typically one PE per GPU for the first run. Point the user to the launcher command shapes in Run a Precompiled Program; do not leave nvcc or the CMake build as the final step.
Ask for the executable path, launcher, PE and node counts, and whether the run is local or scheduled. Confirm that the executable and NVSHMEM runtime libraries are visible on every participating node.
Start with two PEs on one node, use one PE per GPU by default, and expand only after the small run succeeds. Present the command shape that matches the available launcher:
mpirun -n <number-of-pes> <program> [arguments]
srun -n <number-of-pes> <program> [arguments]
nvshmrun -n <number-of-pes> <program> [arguments]
Require the launcher to propagate the CUDA and NVSHMEM environment to every PE. Explain the expected per-PE output and verify it before recommending a larger or multi-node run.
Invoke $nvshmem-docs with a complete requested version or latest when the request needs any of the following:
nvcc toolchains;$nvshmem-docs rather than inferring them.| Symptom | Likely cause class | Response |
|---|---|---|
| Compilation or linking fails | Source, flags, library order, package layout, or version mismatch | Invoke $nvshmem-troubleshoot-and-report-bugs with the full command and diagnostics. |
| A program errors or hangs | Launcher, bootstrap, transport, topology, runtime configuration, or program behavior | Invoke $nvshmem-troubleshoot-and-report-bugs with the complete launch stanza and output from every PE. |
| A specialist skill is unavailable | The normal diagnostic or version-specific route cannot be used | Invoke $nvshmem-docs for version-matched troubleshooting, FAQ, and support routes; do not invent a workaround. |
For an execution failure, pass or collect the complete command or batch-script launch stanza and complete stdout and stderr from every PE, including output before the first error and per-PE logs. For a compile or link failure, pass or collect the complete compiler or linker command, full diagnostic output, undefined symbols, and library order. In both cases, include the NVSHMEM version, relevant CUDA and launcher versions, and target environment details when available.
Keep installation and program-writing requests on their normal routes unless the user explicitly reports a failure in one of the two stages above.
Fit assessment:
Use $nvshmem-get-started to assess whether a multi-GPU stencil with GPU-resident halo exchanges is a strong NVSHMEM fit or is simpler with MPI.
Ask only for communication facts that affect the decision, then conclude with strong fit, possible fit, or likely simpler with another model and explain the deciding factors.
First-program guidance:
Use $nvshmem-get-started to help me design, compile, and launch my first C++ NVSHMEM ring program without executing anything.
Teach the mental model before concrete primitives, present adaptable compile and launch shapes, and keep execution outside scope unless the user separately requests it.
NVSHMEM4Py first-run guidance:
Use $nvshmem-get-started to help me run my first NVSHMEM4Py program with two GPUs, without executing anything.
Read the NVSHMEM4Py program guide, collect the Python environment and launcher context, obtain current version-matched Python API and launch details from $nvshmem-docs, and provide a user-runnable small-run plan.
まだレビューはありません。使ってみた感想をお寄せください。
ログインなしで書き込めます。使ってみた感想、質問、動かなかった環境などを気軽にどうぞ。
まだコメントはありません。最初のコメントを書いてみませんか。
Official NVIDIA-authored guidance for NVIDIA cuDF GPU DataFrames, pandas acceleration, dask-cuDF, ETL, joins, groupby, CSV/Parquet I/O, nullable semantics, and multi-GPU DataFrame workloads.
日本語の概要は準備中です。原文の説明を表示しています。
Customize NVIDIA Nemotron Voice Agent's Generic Pipecat example for healthcare appointment, five-field patient intake, or custom tool-calling workflows without a separate backend.
日本語の概要は準備中です。原文の説明を表示しています。
Calibrate a new dataset from live RTSP camera streams via the AutoMagicCalib REST API. Use when the user provides RTSP URLs or asks to calibrate live cameras; VIOS records clips, AMC ingests them, then runs calibration.
日本語の概要は準備中です。原文の説明を表示しています。
Run end-to-end calibration on the shipped sample dataset (sdg_08_2_sample_data_010926.zip) against a running AMC microservice. Use when user says 'test sample dataset', 'run sample calibration', 'verify AMC install', or 'launch and test'.
日本語の概要は準備中です。原文の説明を表示しています。
Calibrates pre-recorded `cam_*.mp4` datasets through the AutoMagicCalib REST API. Use for user-supplied local MP4s; route live RTSP streams to `amc-run-rtsp-calibration`.
日本語の概要は準備中です。原文の説明を表示しています。
Launch AutoMagicCalib microservice and web UI from NGC release images via Docker Compose. Use when user says 'deploy auto calibration', 'launch auto calibration', 'launch AMC', 'start MS+UI', or 'set up auto-magic-calib'. Requires NGC API key.
日本語の概要は準備中です。原文の説明を表示しています。