Skip to content

mhahmadilivany/FT-Sparse

Repository files navigation

GPUScheduling-for-Sparsity-and-Reliability

Integrating sparsity for CNNs and GPU scheduling for reliability study.

Logs

All output logs are stored in a directory named based on model-name-dataset.

Testing an original model:

python main.py --model=model-name --dataset=dataset-name --batch-size=xx

model-name is set based on: https://github.com/chenyaofo/pytorch-cifar-models/

dataset: cifar10, or cifar100, or imagenet

batch-size is an integer number

Applying sparsity and fine-tuning a model

`python main.py --model=model-name --dataset=dataset-name --batch-size=xx --is-sparsity --is-finetune --epoch=xx

epoch is an integer number used for fine-tuning. recommended: 20 for cifar10, and 50 for cifar100

Testing a sparse model with semi-structured accuracy

python main.py --model=model-name --dataset=dataset-name --batch-size=xx --is-sparsity

Exporting tiled values for inputs, weights, and sparsity metadata

python main.py --model=model-name --dataset=dataset-name --batch-size=1 --is-tiling --is-sparsity

It outputs the information for 100 tiles.

Fault injection

into metadata:

python main.py --model=model-name --dataset=dataset-name --batch-size=100 --is-sparsity --is-FI --FI-location=metadata --FI-iteration=10 --FI-study=random

into weights:

python main.py --model=model-name --dataset=dataset-name --batch-size=100 --is-sparsity --is-FI --FI-location=weight --FI-iteration=10 --FI-study=random

NB! Due to memory usage, execute fault injection with a maximum of 10 iterations.

NB! After running an FI experiment, you can obtain the overall results using the log-reader.py file and editing it, taking into account the name of the FI log file.

About

Integrating sparsity for CNNs and GPU scheduling for reliability study

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors