Fill a large pot with water. Add 2 tablespoons of salt and bring to a boil.
Melt butter in a large heavy-bottomed skillet over medium-high heat. Stir in garlic. Cook for 30 seconds and add shrimp. Cook shrimp, stirring frequently, until they’re pink and opaque. Remove shrimp and garlic from pan, and set aside.
Return pan to heat and add olive oil. Add onion and cook until it softens, 2-3 minutes. Toss in the whole cherry tomatoes. Cook the tomatoes for 5-6 minutes, stirring frequently. Once the tomato skins starts to split, crush them with the back of a wooden spoon. Season sauce to taste with salt and pepper.
Meanwhile, cook pasta until al dente — or for two minutes less than the box recommends. Reserve 1/2 cup of the pasta water before draining.
Turn sauce to high heat, add pasta water to the sauce and bring it to a boil. Reduce to a simmer and add shrimp and garlic.
Drain pasta and toss it with the sauce until all pasta is coated. Garnish with torn basil and serve.