     timer t;
 
     thrust::sort_by_key(keys.begin(), keys.end(), values.begin());
+    assert(thrust::is_sorted(keys.begin(), keys.end()));
 
     std::cout << "SoA sort took " << 1e3 * t.elapsed() << " milliseconds" << std::endl;
   }

#include <thrust/device_vector.h>
#include <thrust/sort.h>
#include <thrust/random.h>

#include "include/timer.h"


    timer t;

    thrust::sort(structures.begin(), structures.end());
    assert(thrust::is_sorted(structures.begin(), structure.end()));

    std::cout << "AoS sort took " << 1e3 * t.elapsed() << " milliseconds" << std::endl;
  }
