1. Przygotować kernel, który mnoży każdy element wektora przez stałą wartość skalarną. Wykorzystać w tym celu pamięć współdzieloną, aby przyspieszyć odczyt danych.
  2. Przygotować kernel, który sumuje dwa wektory element po elemencie. Wykorzystać w tym celu pamięć współdzieloną, aby zminimalizować liczbę odwołań do pamięci globalnej.
  3. Przygotować kernel, który kopiuje wektor do nowego wektora z jednoczesnym odwróceniem kolejności elementów, używając metody Warp Shuffle.
  4. Przygotować kernel, który oblicza średnią wartości wektora przy użyciu metody Warp Shuffle. W tym celu należy podzielić dane wejściowe na fragmenty przetwarzane przez niezależne warp’y.