Skip to content

Instantly share code, notes, and snippets.

I may be slow to respond.

Raeid raeidsaqur

I may be slow to respond.
View GitHub Profile
raeidsaqur /
Created Apr 30, 2020
Handling Conda Environments in Jupyter Notebook
# Create virtual env in Conda
conda create -n aenv python=3.8
conda activate aenv
# To [list|remove]
#conda env [list|remove] [-n aenv]
# Add Conda env to Jupyter Notebook
pip install --user ipykernel
raeidsaqur /
Created Apr 30, 2020
from functools import TopologicalSorter
graph = {"A": {"D"}, "B": {"D"}, "C": {"E", "H"}, "D": {"F", "G", "H"}, "E": {"G"}}
ts = TopologicalSorter(graph)
# ['H', 'F', 'G', 'D', 'E', 'A', 'B', 'C']
raeidsaqur /
Last active Mar 31, 2020
WandB Run Identifier (naive, untested example) to exemplify the idea
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import time, logging, platform
import wandb
def wandb_init(opt, *args, **kwargs):
"""A quick naive example """
wandb_identifier = get_run_identifier(opt, *args, **kwargs)
wandb.init(project="aProj", name=wandb_identifier, notes="<Intriguing notes>")
raeidsaqur /
Last active Oct 9, 2019
Cluster Usage Helpful Bash Aliases

Add the following helper commands to your ~/.bash_profile to easily check cluster status

sq returns the status of jobs with respect to the $(PARTITION) machines.*

alias sq='squeue -o "%.18i %.9P %.8j %.8u %.6c %.8b %.8m %.8T %.10M %.9l %.6D %R" -A $(PARTITION_NAME)'

alias sinfo='sinfo -p all,$(PARTITION1), $(PARTITION2) -el -o "%15N %.6D %.9P %.7T %.4c %.13G %.8z %.6m %.6w %20E"'

alias sqk='squeue -u $(USERNAME)'

raeidsaqur / jupyter.slurm
Last active Oct 14, 2019
SLURM script for opening a Jupyter Notebook tunnel
View jupyter.slurm
#SBATCH -p p100
#SBATCH --gres=gpu:1
#SBATCH -c 4
#SBATCH --mem=16G
#SBATCH --nodes=1
#SBATCH --ntasks=1
##SBATCH --ntasks-per-node=1
#SBATCH --time=04:00:00
#SBATCH --job-name=jupyter-notebook
raeidsaqur /
Last active Oct 15, 2019
Blender installation for Synthetic Image dataset generation

Simple steps:

  1. Download from official site and extract it. Version 2.79

    wget Extract: tar -xvf <blender_version>

  2. sudo mv /{path_to}/{Extracted folder} /opt/blender

  3. Create a symbolic link for use from the command line:

raeidsaqur / environment.yml
Created Sep 25, 2019
Conda environment.yml template for project specific conda environment creation.
View environment.yml
name: null # env was made with --prefix
- conda-forge # added a third party channel
- defaults
- numpy=1.16.3=py37h926163e_0
- opencv=3.4.2=py37h6fd60c2_1
- pandas=0.24.2=py37h0a44026_0
- pip=19.1.1=py37_0
- pip: # Packages installed from PyPI
raeidsaqur / nb.slurm
Created Sep 25, 2019
nb.slurm is a slurm script to launch a Jupyter notebook server on ionic. You can connect to it by tunneling using SSH from your local machine -- Follow the instructions in the corresponding slurm output file after the job gets scheduled.
View nb.slurm
#SBATCH --partition general
#SBATCH --nodes 1
#SBATCH --ntasks-per-node 1
#SBATCH --mem 16G
#SBATCH --gres gpu:1
#SBATCH --time 1-0:00:00
#SBATCH --job-name jupyter-notebook
#SBATCH --output jupyter-notebook-%J.log
# conda-auto-env automatically activates a conda environment when
# entering a folder with an environment.yml file.
# If the environment doesn't exist, conda-auto-env creates it and
# activates it for you.
# To install add this line to your .bashrc or .bash-profile: