Skip to content
View jkrishnad's full-sized avatar

Highlights

  • Pro

Block or report jkrishnad

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. 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
JKrishnad/README.md

JK

Infrastructure engineer working on Solana validator operations and Linux networking. Rust.

I ran a Solana testnet validator on bare metal for 117 days (6,904 blocks, 12 skipped) and built the tooling around it. Now building shred tooling and writing up what the node taught us.

Shred tooling

Read the shreds reaching a validator, verify them, rebuild the blocks.

Project What it does
shredcore Rust libraed packets, get back verified slots and transactions
shredtap Live shred decoder and dashboard. Rebuilds FEC sets, checks Merkle proofs and leader signatures, turns shreds into blocks
shredwire Verifies every shred off the wire and streams each transaction over gRPC the moment its batch completes

Validator tooling

Built for the validator I operated at @vyralabshq.

Project What it does
preflight Read only preflight check for validator hosts. 40 checks, tells you what is wrong before you start the node
driftwatch eBPF profiler for disk I/O on Solana validator nodes
agave-tap Reads Agave nverts them to InfluxDB line protocol, roughly 100 measurements asecond
vyralabs The Vyra Labs

Systems work

Project What it is
sol-indexer Solana istone Geyser gRPC stream
gossip-explorer Minimal Rust spy node that explores the Solana gossip network
mini-validator Simipeline in Rust, built to see how the stages fit together
banking-jitter-harness Measures Agave banking-stage timing against the Votor slot budget
Event-Ingestion Hy ingestion service
matching-engine Real time order matching engine
Token-Program Reimprogram
QUIC-Implementation QUIC client and server, written to understand the transport Solana uses
SMTP SMTP server in Rust

eBPF and XDP

Project What it is
xdp-with-aya XDP pac
packet-counter eBPF packet counter
xdp-log XDP logging progr

Wrote a series on how eBPF programs are actually built: [Aya project a.xyz/blogs/deep-dive-into-aya-project-structure), writing eBPFprograms, anatomy of eBPF programs.

Open source

Merged contributions in:

Project What it is
solana-foundation/surfpool Local Solana development environment
otter-sec/anchor The Ancho
boa-dev/boa JavaScript engine written in Rust
gillsdk/gill Solana JavaScript
samui-build/samui-wallet Open source Solana wallet
blueshift-gg/Scilla Sol
solana-rpc/superbank Solana ledger RPC stack

Pinned Loading

  1. vyralabshq/sol-indexer vyralabshq/sol-indexer Public

    A solana indexer project where i have tried to index the blockchain data

    Rust 9

  2. Event-Ingestion Event-Ingestion Public

    High throughput low latency system

    Rust 1

  3. matching-engine matching-engine Public

    A real-time order matching engine that matches buy and sell orders using an in-memory orderbook.

    Rust 2

  4. banking-jitter-harness banking-jitter-harness Public

    Test harnesses which measures Agave's banking-stage timing against Votor's slot budget

    Rust 3

  5. vyralabshq/driftwatch vyralabshq/driftwatch Public

    an eBPF profiler for monitoring disk I/O on Solana validator nodes.

    Rust 4 1

  6. gossip-explorer gossip-explorer Public

    a minimal rust spy node

    Rust 4