Repository navigation
Conversation
c42639f to
99f1956
Compare
|
/ok to test 99f1956 |
99f1956 to
0437f77
Compare
|
/ok to test 0437f77 |
0437f77 to
3c36d60
Compare
|
/ok to test 3c36d60 |
|
/ok to test 72bf7fc |
|
/ok to test 3cebbaf |
3cebbaf to
cdee142
Compare
|
/ok to test cdee142 |
cdee142 to
d3d711e
Compare
|
/ok to test d3d711e |
d3d711e to
4dff40e
Compare
|
/ok to test 4dff40e |
|
Hi @bmhowe23 , I think this PR is ready for review again. Thanks. |
4dff40e to
6595335
Compare
|
/ok to test 6595335 |
|
/ok to test 9eeac99 |
bmhowe23
left a comment
There was a problem hiding this comment.
Several of the new tests run code paths without asserting the behavior they're named for (examples inline). Since these count toward coverage but wouldn't catch regressions, could you either add assertions that can actually fail, or drop them? Fewer, sharper tests would make this much easier to review and maintain.
9eeac99 to
6f7219d
Compare
|
We also strengthened |
|
/ok to test 6f7219d |
|
Hi @bmhowe23 , thanks for the comments, and the code is ready for review again. |
Signed-off-by: Kaiqi Yan <kaiqiy@nvidia.com>
Signed-off-by: Kaiqi Yan <kaiqiy@nvidia.com>
Signed-off-by: Kaiqi Yan <kaiqiy@nvidia.com>
Signed-off-by: Kaiqi Yan <kaiqiy@nvidia.com>
Signed-off-by: Kaiqi Yan <kaiqiy@nvidia.com>
Signed-off-by: Kaiqi Yan <kaiqiy@nvidia.com>
Signed-off-by: Kaiqi Yan <kaiqiy@nvidia.com>
Signed-off-by: Kaiqi Yan <kaiqiy@nvidia.com>
…thout a GPU, and skip TRT helper without a GPU or ONNX fixture Signed-off-by: Kaiqi Yan <kaiqiy@nvidia.com>
Signed-off-by: Kaiqi Yan <kaiqiy@nvidia.com>
Signed-off-by: Kaiqi Yan <kaiqiy@nvidia.com>
Signed-off-by: Kaiqi Yan <kaiqiy@nvidia.com>
Signed-off-by: Kaiqi Yan <kaiqiy@nvidia.com>
…, and dataplane wraps Signed-off-by: Kaiqi Yan <kaiqiy@nvidia.com>
Signed-off-by: Kaiqi Yan <kaiqiy@nvidia.com>
…ild when a CUDA-Q stub is missing Signed-off-by: Kaiqi Yan <kaiqiy@nvidia.com>
…ild when a CUDA-Q stub is missing Signed-off-by: Kaiqi Yan <kaiqiy@nvidia.com>
…rengthen those tests Signed-off-by: Kaiqi Yan <kaiqiy@nvidia.com>
Signed-off-by: Kaiqi Yan <kaiqiy@nvidia.com>
Signed-off-by: Kaiqi Yan <kaiqiy@nvidia.com>
Signed-off-by: Kaiqi Yan <kaiqiy@nvidia.com>
Signed-off-by: Kaiqi Yan <kaiqiy@nvidia.com>
Signed-off-by: Kaiqi Yan <kaiqiy@nvidia.com>
d7baad1 to
69c8dff
Compare
|
/ok to test 69c8dff |
Signed-off-by: Kaiqi Yan <kaiqiy@nvidia.com>
|
/ok to test d68473f |
|
Thanks @kaiqiy-nv for the PR. For v0.9.0, I would prefer splitting this into two PRs:
This would let us include the fixes in RC3 while reviewing the broader coverage independently. One additional point: |
This PR is a combined one.
It tries to quick-fix 2 issues in [B] 6770739 and 1 issue in [B] 6770754.
It also adds lots of more tests to improve the code coverage.
The ONLY product code LOGIC change is
DeviceGraphRingConsumer.cpp, where the 3 issues are located.The only other product side code change (
libs/qec/lib/realtime/decoding-server-cqr/CMakeLists.txt) is to register the existingcudaq-qec-decoding-server-device-graph-linkcheckexecutable with ctest; it does not change the library.In this suggested fix:
We replace throwing
CUDA_QEC_ERRORcalls in status-returning paths with non-throwingcudaq::qec::errorcalls, sopopulate_device_call()can returnfalseand the C factory can returnnullptr. We also separate thecudaMallocandcudaMemsetchecks, and freed_stats_before throwing when its initialisation fails.In this case, pinned function-table memory is released after DEVICE_CALL population failures, the C factory honours its null-on-failure contract, and allocated device memory is released after a
cudaMemsetfailure. Therefore, resource leaks and uncontrolled startup termination can be avoided.Added test cases for these 3 issues:
DeviceGraphRingConsumer.CudaAndDlsymFailures:We inject missing and invalid DEVICE_CALL populate entries and a
cudaMemsetfailure, and then check that construction throws andlive_count()is zero, so the resource leaks can be exposed.DeviceGraphRingConsumer.SuccessShutdownDispatchedAndCAbi:We pass null graph resources to the C factory and then check that it returns
nullptr, so an exception escaping instead of the documented null result can be exposed.Other added test cases are normal ones for code coverage improvement only. No more bugs exposed.
Thanks for looking at this PR.