GPU-accelerated data science with RAPIDS, cuDF, cuML, XGBoost, and Dask for the NVIDIA-Certified Associate Accelerated Data Science exam.
Free sample questions
No account needed. Every question has a worked explanation, just like the full bank.
lock_openFree sampleAdvanced Data Structureshard
A data engineer loads a social network dataset into cuGraph using a compressed sparse row (CSR) representation. After running a breadth-first search from a single source node, she notices the traversal completes far faster than the equivalent NetworkX run on CPU. Which characteristic of GPU hardware most directly explains this speedup for BFS on large sparse graphs?
- ABFS can expand the entire frontier of unvisited neighbours in parallel across GPU threads, saturating memory bandwidth with concurrent edge readscheck_circle Correct
- BGPUs have higher single-core clock speeds than CPUs, so each edge inspection executes faster
- CCSR layout stores edges in sorted order, letting cuGraph skip visited nodes via binary search instead of hash-table lookup
- DcuGraph offloads the BFS queue management to the CPU while the GPU handles only the arithmetic, reducing data-transfer overhead
Explain why GPU parallelism accelerates graph traversal algorithms such as BFS when using cuGraph on large sparse graphs. BFS traversal processes a frontier of nodes whose neighbours can all be inspected independently. A GPU exposes thousands of CUDA cores that operate simultaneously, so an entire frontier layer is expanded in a single pass rather than node-by-node as on a CPU. cuGraph stores graphs in CSR or COO format on GPU memory, allowing threads to read adjacency lists with high aggregate HBM bandwidth. The combination of fine-grained parallelism and high memory throughput is the primary source of the speedup over CPU-based NetworkX.
Why A is correct: Each BFS frontier level exposes a large set of independent neighbour checks; GPU threads process these in parallel and the high aggregate memory bandwidth of GPU HBM handles the irregular sparse-memory access pattern at scale
Why B is wrong: GPUs typically run at lower clock speeds than modern CPUs; their advantage comes from massively parallel execution across thousands of cores, not faster individual clock cycles
Why C is wrong: CSR is a compact adjacency format that enables coalesced reads, but BFS visited-node tracking uses a bitset or boolean array, not binary search; the speedup is from parallelism, not search algorithm substitution
Why D is wrong: cuGraph keeps both the graph data and the traversal state resident on the GPU throughout; round-tripping queue state to the CPU would add PCIe latency and negate the GPU advantage
lock_openFree sampleAdvanced Data Structureshard
A machine learning engineer has a graph with 50 million edges stored as a cuDF DataFrame with columns 'src' and 'dst'. She wants to compute connected components across the entire graph. Which cuGraph workflow correctly constructs the graph object and runs the algorithm?
- AConvert the cuDF DataFrame to a pandas DataFrame, pass it to networkx.from_pandas_edgelist, then call the NetworkX connected components function so cuGraph can intercept the call transparently
- BCreate a cuGraph Graph from the cuDF edge DataFrame directly, then call the cuGraph weakly connected components function, which returns a cuDF DataFrame of vertex-component assignmentscheck_circle Correct
- CUse the cuDF merge operation to self-join the edge DataFrame on matching src and dst columns; the resulting clusters correspond directly to connected components
- DStore the edges in a COO matrix via cuSparse, run sparse matrix-vector multiplication iteratively until convergence, then read component labels from the output vector
Demonstrate how to construct a cuGraph graph from a cuDF edge DataFrame and apply a connectivity algorithm while keeping data on the GPU. cuGraph is designed to accept cuDF DataFrames as input for edge lists, avoiding any CPU round-trip. Once the graph object is created from the 'src' and 'dst' columns, cuGraph's weakly connected components algorithm propagates component labels using GPU-parallel label propagation or BFS-based flooding internally. The result is returned as a cuDF DataFrame mapping each vertex to its component ID, keeping the entire pipeline - from raw edges to component labels - within GPU memory and enabling downstream cuDF operations on the result without further data movement.
Why A is wrong: cuGraph does not intercept NetworkX calls; the graph must be constructed natively in cuGraph, and converting 50 million edges to pandas would move data off the GPU and lose the memory and compute advantages of RAPIDS
Why B is correct: cuGraph accepts a cuDF DataFrame to build its internal graph representation without leaving GPU memory; weakly connected components is implemented natively in cuGraph and returns results as a cuDF DataFrame, keeping the full workflow on the GPU
Why C is wrong: A self-join on src/dst identifies reflexive or duplicate edges, not transitive reachability; connected components require propagating labels through multi-hop paths, which is a graph algorithm, not a relational join
Why D is wrong: Iterative SpMV can implement label propagation but it is a low-level approach; cuGraph provides a purpose-built connected components primitive that is more efficient and handles convergence internally, without the engineer implementing the iteration manually
lock_openFree sampleAdvanced Data Structureshard
A social-network analyst needs to identify the accounts that act as bridges between otherwise disconnected communities - accounts whose removal would most fragment the network into isolated clusters. Which centrality measure directly quantifies this bridging role?
- ADegree centrality
- BEigenvector centrality
- CBetweenness centralitycheck_circle Correct
- DPageRank centrality
Select the correct centrality measure to identify structural bridge nodes in a community-partitioned network. Betweenness centrality is defined as the fraction of all-pairs shortest paths that pass through a given node. Nodes sitting on many cross-community shortest paths accumulate large betweenness scores, making them the primary candidates whose removal would sever inter-community connectivity. Degree and eigenvector centrality reward connection count or neighbour prestige rather than structural bridging. PageRank uses a damped random walk on directed edges and does not isolate the bridging property. In cuGraph, betweenness centrality is available via cugraph.betweenness_centrality, operating on a cuGraph Graph object and returning a cuDF DataFrame of scores.
Why A is wrong: Degree centrality counts a node's direct connections, so highly connected hubs score well. A node can have many neighbours within a single community and score high on degree while providing no bridging function between separate groups.
Why B is wrong: Eigenvector centrality scores a node by the importance of its neighbours rather than their raw count. It rewards connection to influential nodes, not structural bridging, so an isolated bridge node between two small clusters would score poorly.
Why C is correct: Betweenness centrality counts how often a node appears on the shortest path between every other pair of nodes. Nodes that lie on paths crossing community boundaries accumulate high betweenness scores, directly measuring the bridging role.
Why D is wrong: PageRank models a random-walk process and assigns higher scores to nodes receiving links from already-important nodes. It was designed for directed web-link graphs and does not directly measure the fraction of shortest paths passing through a node.
Frequently asked questions
- How many questions are on the NCA-ADS exam?
- The NVIDIA-Certified Associate: Accelerated Data Science (NCA-ADS) exam has 50 to 60 questions and runs for 60 minutes. The format is multiple choice, online proctored.
- What score do I need to pass NCA-ADS?
- NVIDIA does not publish a fixed pass mark for NCA-ADS, so treat any "X%" figure you see elsewhere as unofficial. Examworthy gives you a per-domain readiness score so you can judge when you are ready across every domain.
- How much does the NCA-ADS exam cost?
- The exam costs 125 USD to sit. Practising on Examworthy is free to start, with a worked explanation on every question.
- Is there a NCA-ADS practice exam?
- Yes. Examworthy's exam mode runs a timed NCA-ADS practice exam (mock) paced to match the real exam, scored per domain so you can see exactly where you stand against the blueprint. Timed mocks are free with an account.
- How does Examworthy help me prepare for NCA-ADS?
- Every practice question carries a worked explanation and a per-distractor rationale, mapped to the official blueprint domains. You learn why each answer is right or wrong, not just the letter.
- Is Examworthy affiliated with NVIDIA?
- No. Examworthy is not affiliated with or endorsed by NVIDIA. Our questions are original, blueprint-aligned practice material; we never reproduce live exam items.
Examworthy is not affiliated with or endorsed by NVIDIA. All questions are original, blueprint-aligned practice material. We never reproduce live exam items. NCA-ADS and related marks belong to their respective owners.