Interpreting migration cause for page faults

The Nsys user manual shows that causes for implicit migration with UVM would be annotated with causes (eg coherence).

However, in the recent versions of nsys (2026.1.1.x), for a UVM workload, I see them appear as page faults in the GUI on a sample UVM nsys-rep, however it is not clear what the cause is for the page fault.

However, querying the sqlite seems to indicate the only cause for a page fault would be to enforce SW Coherence. Am I interpreting this correctly? Has “Migration cause: Coherence” as shown in the documentation been deprecated in newer versions of nsys?


sqlite3h100_BFS.sqlite “SELECT * FROM ENUM_CUDA_UNIF_MEM_MIGRATION;” 
0|CUDA_UNIFIED_MEMORY_MIGRATION_CAUSE_UNKNOWN|Unknown
1|CUDA_UNIFIED_MEMORY_MIGRATION_CAUSE_USER|User prefetch
2|CUDA_UNIFIED_MEMORY_MIGRATION_CAUSE_COHERENCE|Page fault
3|CUDA_UNIFIED_MEMORY_MIGRATION_CAUSE_PREFETCH|Speculative prefecth
4|CUDA_UNIFIED_MEMORY_MIGRATION_CAUSE_EVICTION|Eviction
5|CUDA_UNIFIED_MEMORY_MIGRATION_CAUSE_ACCESS_COUNTERS|Access counters

h100_BFS_t64_g64_adynamic.nsys-rep.zip (40.9 MB)

I believe that this is just a wording change, basically the kind of faults that were formerly labeled Coherence are now being labeled Page faults.

But I will loop in @skottapalli as the expert.

@skottapalli following up on this.

As I understand older platforms (x86+H100) here trigger page faults for either coherence or migration. While newer platforms (GH200) trigger page faults exclusively due to migration (since it is HW coherent).

Could you please help me interpret how NSYS represents each of these?