diff --git a/cron/hosting_cron.module b/cron/hosting_cron.module
index 241eaf7..05f66d3 100644
--- a/cron/hosting_cron.module
+++ b/cron/hosting_cron.module
@@ -9,14 +9,11 @@
  */
 function hosting_cron_hosting_queues() {
   $items['cron'] = array(
-    'type' => 'batch',
+    'type' => HOSTING_QUEUE_TYPE_PARALLEL,
     'name' => t('Cron queue'),
     'description' => t('Run cron on hosted sites.'),
     'total_items' => hosting_site_count(),
     'frequency' => strtotime("1 hour", 0),
-    'min_threads' => 6,
-    'max_threads' => 12,
-    'threshold' => 100,
     'singular' => t('site'),
     'plural' => t('sites'),
   );
diff --git a/hosting.module b/hosting.module
index 7140cba..82ad887 100644
--- a/hosting.module
+++ b/hosting.module
@@ -13,6 +13,8 @@
  */
 define('HOSTING_MAX_ALIAS_LENGTH', 235);
 
+define('HOSTING_QUEUE_TYPE_PARALLEL', 'parallel');
+
 /**
  * Not split for performance reasons. Just to keep code together.
  */
@@ -869,6 +871,16 @@ function hosting_queues_configure($form, &$form_state) {
         '#suffix' => "</div>",
       );
     }
+    elseif ($info['type'] == HOSTING_QUEUE_TYPE_PARALLEL) {
+      $form[$queue]['frequency']['items'] = array(
+        '#markup' => t('%count %items every', array(
+          "%count" => $info['total_items'],
+          "%items" => format_plural($info['total_items'], $info['singular'], $info['plural']),
+        )),
+        '#prefix' => "<div class='hosting-queue-frequency-items'>",
+        '#suffix' => "</div>",
+      );
+    }
     else {
       $form[$queue]['frequency']['items'] = array(
         '#type' => 'textfield',
diff --git a/hosting.queues.inc b/hosting.queues.inc
index 7d7546d..2dba35e 100644
--- a/hosting.queues.inc
+++ b/hosting.queues.inc
@@ -96,6 +96,16 @@ function hosting_get_queues($refresh = FALSE) {
         $queue['calc_frequency'] = ceil($queue['frequency'] / $threads);
         $queue['calc_items'] = ceil($queue['total_items'] / $threads);
       }
+      elseif ($queue['type'] == HOSTING_QUEUE_TYPE_PARALLEL) {
+        if ($queue['total_items'] > 0) {
+          $queue['calc_frequency'] = max(120, $queue['frequency'] / $queue['total_items']);
+        }
+        else {
+          $queue['calc_frequency'] = 86400;
+        }
+        $queue['calc_items'] = ceil($queue['calc_frequency'] / $queue['frequency'] * $queue['total_items']);
+        $queue['running_items'] = 0;
+      }
       else {
         $queue['calc_frequency'] = $queue['frequency'];
         $queue['calc_items'] = $queue['items'];
