Skip to content
View iemAnshuman's full-sized avatar

Highlights

  • Pro

Block or report iemAnshuman

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
iemAnshuman/README.md

I work on distributed runtimes and accelerator communication: collective algorithms, GPU runtime behavior, and the measurement code around them.

Mostly C++, CUDA, HPX/MPI, Linux systems work, and performance experiments that try to make the failure mode measurable.

Things that exist

HPX · C++ / HPX / MPI

56 merged upstream PRs. In hpx::collectives: hierarchical all_reduce, all_gather, all_to_all, inclusive_scan, and exclusive_scan; unified generation handling, flattened hierarchical payloads, hardened failure paths, and size-based pairwise all_to_all.

The pairwise campaign covered 960 executions across 16–128 localities and 4 B–64 KiB per destination.

In the runtime: orderly MPI parcelport teardown, shutdown races in the TCP sender and background threads, Dijkstra termination-probe fixes, failure detection and killed-locality handling, the nvcc CUDA builds, and the LSU Rostam CI.

HAMi host-PID broker · Go / C / CUDA

The device plugin serves a Unix socket and reads each caller's host PID from SO_PEERCRED, so HAMi-core finds it without the before/after CUDA primary-context probe and without mounting host procfs. Server and device plugin in HAMi#2417, init-time client in HAMi-core#354. Off by default; falls back to a node-wide lock and the old probe when the broker can't answer.

HAMi-core · C / CUDA / Linux

Replaced a post-initialization lock that stayed stuck after its owner was killed with process-recoverable POSIX record locking, plus concurrency regression coverage. Smaller fixes for repeated RTLD_NEXT lookups returning null, rate limiting on cuLaunchCooperativeKernel, and the fan index and timestamps the v2 hooks were dropping.

CommCanary · Python

Source-verifiable distributed-communication canaries. Turns workload traces into replayable artifacts, then checks source correspondence, timing, rankings, and decision behavior instead of assuming a smaller trace preserved them.

Other upstream fixes

  • triton#12001 · file cache groups keep working after the cache dir is moved
  • dynamo#15395 · replayed tokens no longer counted as prompt tokens after a request migrates

Currently thinking about

GPU-aware communication, memory registration, runtime initialization, symmetric-memory collectives, transport progress, and how to make performance claims survive reproduction.


writing · email · x · linkedin

Popular repositories Loading

  1. neuro-ranker-distill neuro-ranker-distill Public

    Python 7 2

  2. Data_Structures Data_Structures Public

    C

  3. HMS-python HMS-python Public

    Python

  4. Research-Internships-for-Undergraduates Research-Internships-for-Undergraduates Public

    Forked from zapplyjobs/Internships-2027

    List of Research Internships for Undergraduate Students

  5. Todoist-CLI Todoist-CLI Public

    Python

  6. oop-uni-codes oop-uni-codes Public

    Java