Home
Robert 'Bob' Caddy
Cancel

Welcome

Intro This is my personal website and research blog. Here you will find what I’m working on, some information about me, and my CV/resume. If you’re interested in my research, contact info, CV/res...

Compute Sanitizer & Device Atomics

NVIDIA Compute Sanitizer PR #196 I got the NVIDIA Compute Sanitizer working with Cholla this week to help diagnose any issues in my code or Cholla in general. It found some problems that I think ...

First Paper & Miscellanea

First Paper The paper from my master’s was published this week in Publications of the Astronomical Society of the Pacific, Volume 134, Number 1039: Optical Time-series Photometry of the Symbiotic ...

Arm DDT and MHD Debugging

Arm DDT With help some nice folks at Arm I figured out how to display device arrays in host code, see this post for details. In preparation for presenting on Arm Forge next week I submitted two P...

Arm DDT with GPUs

Debugging GPU Codes with Arm DDT See the Arm Forge User Guide for all the info, this is just a place for some notes and tips Use -g -O0 to compile host code and -g -G -cudart shared to compile...

Arm Forge

Arm Forge I spent the week getting Arm Forge setup and working with Cholla. The documentation is pretty easy to follow and it was reasonably easy to setup.

Software Testing & Methodologies

Useful Links & Guides Note that a lot of these links lead to specific companies who are selling testing software or something similar. The guides are still good, they’re just trying to prom...

Visual Studio Code for HPC and C++

Intro to Visual Studio Code for C++ and HPC IDE vs. Text Editor vs. “Inline” Text Editor “Inline” Text Editors: vi/vim, emacs, pico/nano. Great for quick edits in the terminal. Extensible...

Git Tutorial

Intro to Git and GitHub General Structure Setup and Install Creating new repos Repository History & Introspection Git Config & Aliases Committing Workflow & Branching A...

C++17 Structured Binding Tutorial

Summary Structured binding is a feature released in C++17 that easily allows a function to return multiple values. This is a quick summary of the various ways to use it, including in a device func...