title: Is there a way to speed up CatBoost.cv on GPU?
body: <p>Although CatBoostClassifier is quite fast for me, I'm having very slow performance with <code>catboost.cv</code> on GPU.</p>
  <p>All all the iterations are quite fast, however every 300-400 iterations, there is a big pause (~5 minutes). Once the pause is over, the iterations continue for about 5 seconds before the next big pause.</p>
  <p>I assume catboost.cv is inefficiently passing data to the GPU during these pauses.</p>
  <p>During that time, GPU usage ranges from 1% to 20%.</p>
  <p>Is there a way to speed up <code>cv</code> with GPU? Maybe there is a way to store the whole dataset in GPU so that these pauses no longer happen?</p>
  <p>Here is a part of my code that causes the slow down:</p>
  <pre class="lang-py prettyprint-override"><code>from catboost import cv, Pool
  
  params = { 'loss_function': 'MultiClass','task_type':&quot;GPU&quot;, 'devices': '0'}
  
  cv_dataset = Pool(data= X_train[features], label= y_train, cat_features=categorical_feature)
  
  scores = cv(cv_dataset, params, fold_count=3, iterations = 1500)
  
  </code></pre>