1 of 6

Visualizing memory access in heterogeneous systems

Elijah Ingram

Tyler Allen

2 of 6

What are heterogeneous systems?

  • Most computers contain multiple types of processors

  • It can be beneficial to move data between different processing devices
    • different devices are good at processing different things
    • devices can be used as cache or secondary memory

  • Data communication between different processors is extremely slow
    • speeding up data communication would provide a big increase in overall performance

3 of 6

Benefits of visualizing data access

  • Creating a visualization of data movement in heterogeneous systems could provide several benefits:

    • Reveal patterns that provide insights into how to speed up data access.

    • Provide an accessible visual abstraction of data access across complex heterogeneous systems.

4 of 6

What we’ve done so far

  • Working on a visualization of data access during a matrix multiplication operation performed on a GPU
    • Shows data movement between host and remote memory when a page fault occurs.

  • Visualization features:
    • Opacity based page access history
    • visual page batching
    • data movement
    • Viewport movement

5 of 6

What still needs to be done

  • Fix bugs and complete the render loop/UI
  • Allow visualization of different types and amounts of devices
  • Modify how much information is presented
  • Optimize performance for larger datasets
  • Include an interactive way to explore the data

6 of 6

Thank You

Q & A