Sitemap
FunkySmileX

FunkySmileX

shares unsavoured experiences with a sigh of relief

Kaldi - GPU Optimization

1 min readAug 27, 2022

--

Kaldi is nerdy toolkit for speech systems, here we explore options of optimizing its GPU usage

FineTuning num_job_initial, num_job_final parameters :

this parameters will increase number of parallel jobs
num_job_initial used to specify parallel jobs at the start of the training
num_job_final used to specify parallel jobs as training progresses

Recommendations:

num_job_initial/num_job_final should be less the number of GPU cards available
you can try to increase the num_jobs if you observe that GPU Utilization during training is less than 70%

using — cuda-memory-proportion option

to use this option we need to re-compile the source binaries after editing the value inside <KALDI>/src/cudamatrix/cu-allocator.h

Get FunkySmileX’s stories in your inbox

Join Medium for free to get updates from this writer.

This option decreases the initial allocation (by default it’s 0.5)
i.e., if you have a GPU of 16GB, kaldi reserves the 8GB of space as an initial allocation

initial_allocation is never a hard limit for computations and if kaldi needs extra memory it will be allocated dynamically

this option can be used to couple with num_jobs if GPU Utilization is not at optimal level

--

--

FunkySmileX
FunkySmileX

Written by FunkySmileX

0 followers

shares unsavoured experiences with a sigh of relief