I work on job-level observability and performance analysis for HTC/HPC clusters. The goal is to move monitoring from the node down to the job: making each job's resource use, I/O behavior and work progress measurable, comparable and reusable.
PhD researcher at the Computing Center, Institute of High Energy Physics, Chinese Academy of Sciences (CC.IHEP.CAS), Beijing.
$ joblens --whoami
role PhD researcher @ CC.IHEP.CAS
focus job-level observability · workload profiling · what-if simulation
stack eBPF / C++ / HTCondor / Elasticsearch
status building job-grained event collectionJobLens is a job-native observability system for HTC/HPC clusters. Agents on compute nodes collect with eBPF and attribute resource data to individual jobs; a unified control plane handles on-demand collection and query.
| Area | Detail |
|---|---|
| Scope | CPU, memory, syscall I/O, file metadata, network; power (RAPL/IPMI), GPU (NVML) |
| Attribution | HTCondor, Slurm, cgroup; PID → job mapping and lifecycle events |
| Output | File, Elasticsearch, Kafka, Prometheus; routed per collector |
| Control plane | Trigger (Flask): REST API and Lua rule engine for admission and collector selection |
| Delivery | C++ / CMake / systemd / unified RPM; AlmaLinux 9; Apache-2.0 |
| Production | Validated at IHEP: 256 cores, 251 HTCondor jobs, CPU < 0.15%, RSS ~145 MB |
Source · API · Deployment · Releases
Two threads, both in progress. No experimental results yet.
For recurring HTC workloads, I study how "how much work has been completed" can enter a job profile, and whether it improves remaining-time prediction and start-time staggering under the same delay budget. The work separates demand, environment and response, and respects what information is available at each point in time.
Using collected profiles to drive SimGrid / WRENCH-style simulation, so that profiles become calibrated simulation inputs rather than a separate, measurement-free model.
| Area | Detail |
|---|---|
| Languages | C++ · Python · Bash |
| Systems | eBPF · Linux · CMake · systemd |
| Scheduling | HTCondor · Slurm · cgroup |
| Data | Elasticsearch · Kafka · Prometheus |
| Services | FastAPI · Vue · Docker · Kubernetes |
WakaTime stats
🐱 My GitHub Data
📦 12.9 kB Used in GitHub's Storage
🏆 484 Contributions in the Year 2026
🚫 Not Opted to Hire
📜 8 Public Repositories
🔑 4 Private Repositories
I'm a Night 🦉
🌞 Morning 61 commits ███░░░░░░░░░░░░░░░░░░░░░░ 11.66 %
🌆 Daytime 173 commits ████████░░░░░░░░░░░░░░░░░ 33.08 %
🌃 Evening 252 commits ████████████░░░░░░░░░░░░░ 48.18 %
🌙 Night 37 commits ██░░░░░░░░░░░░░░░░░░░░░░░ 07.07 %
📅 I'm Most Productive on Tuesday
Monday 88 commits ████░░░░░░░░░░░░░░░░░░░░░ 16.83 %
Tuesday 111 commits █████░░░░░░░░░░░░░░░░░░░░ 21.22 %
Wednesday 49 commits ██░░░░░░░░░░░░░░░░░░░░░░░ 09.37 %
Thursday 100 commits █████░░░░░░░░░░░░░░░░░░░░ 19.12 %
Friday 35 commits ██░░░░░░░░░░░░░░░░░░░░░░░ 06.69 %
Saturday 83 commits ████░░░░░░░░░░░░░░░░░░░░░ 15.87 %
Sunday 57 commits ███░░░░░░░░░░░░░░░░░░░░░░ 10.90 %
📊 This Week I Spent My Time On
🕑︎ Time Zone: Asia/Hong_Kong
💬 Programming Languages:
C++ 7 hrs 15 mins ███████░░░░░░░░░░░░░░░░░░ 27.45 %
Markdown 5 hrs 46 mins █████░░░░░░░░░░░░░░░░░░░░ 21.86 %
Other 4 hrs 6 mins ████░░░░░░░░░░░░░░░░░░░░░ 15.56 %
Python 2 hrs 23 mins ██░░░░░░░░░░░░░░░░░░░░░░░ 09.05 %
TypeScript 2 hrs 18 mins ██░░░░░░░░░░░░░░░░░░░░░░░ 08.74 %
🔥 Editors:
VS Code 11 hrs 46 mins ███████████░░░░░░░░░░░░░░ 44.57 %
Opencode Cli 6 hrs 52 mins ██████░░░░░░░░░░░░░░░░░░░ 25.99 %
OpenCode 6 hrs 46 mins ██████░░░░░░░░░░░░░░░░░░░ 25.65 %
Codex Vscode 59 mins █░░░░░░░░░░░░░░░░░░░░░░░░ 03.76 %
Codex CLI 0 secs ░░░░░░░░░░░░░░░░░░░░░░░░░ 00.03 %
💻 Operating System:
WSL 26 hrs 26 mins █████████████████████████ 100.00 %
I Mostly Code in Python
Python 10 repos ██████████░░░░░░░░░░░░░░░ 41.67 %
JavaScript 2 repos ██░░░░░░░░░░░░░░░░░░░░░░░ 08.33 %
C 2 repos ██░░░░░░░░░░░░░░░░░░░░░░░ 08.33 %
Makefile 1 repo █░░░░░░░░░░░░░░░░░░░░░░░░ 04.17 %
Jupyter Notebook 1 repo █░░░░░░░░░░░░░░░░░░░░░░░░ 04.17 %
Timeline
Last Updated on 14/11/2026 00:29:21 UTC
