Parallel processing
Parallel processing with joblib for grid search and batch computations across multiple CPU cores.From its SKILL.md
npx -y skills add cxcscmu/SkillLearnBench --skill parallel-processingAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
SKILL.md
1.0 KB, 247 tokens by cl100k_base, as published. Nobody here has run it
Parallel Processing with joblib
Grid Search Parallelization
from joblib import Parallel, delayed
import itertools
def evaluate_params(min_samples, epsilon, shape_weight, citsci_grouped, expert_grouped, all_images):
# ... evaluate one hyperparameter combination
return f1_avg, delta_avg, min_samples, epsilon, shape_weight
param_grid = list(itertools.product(
range(3, 10), # min_samples
range(4, 25, 2), # epsilon
[round(0.9 + i*0.1, 1) for i in range(11)] # shape_weight
))
results = Parallel(n_jobs=-1)(
delayed(evaluate_params)(ms, eps, sw, citsci_grouped, expert_grouped, all_images)
for ms, eps, sw in param_grid
)
Key Points
n_jobs=-1uses all available coresdelayed()wraps the function for lazy evaluation- Each call should be independent (no shared mutable state)
- Pass pre-grouped DataFrames to avoid redundant groupby in each worker
What ships with it
Read from the repository
Just SKILL.md. No reference files, no scripts.