Я считаю, что у вас есть ответ, необходимый для профилирования запросов. Однако это самая простая часть настройки производительности. Как только вы узнаете, что это запросы, а не сеть или приложение, как найти и устранить проблему?
Настройка производительности - сложная вещь. Но есть несколько мест, чтобы посмотреть в первую очередь. Вы говорите, что возвращаете много данных? Вы возвращаете больше данных, чем вам нужно? Вы действительно возвращаете только нужные вам столбцы и записи? Возврат 100 столбцов с помощью select * может быть намного медленнее, чем возврат 5 столбцов, которые вы фактически используете.
Ваши индексы и статистика актуальны? Посмотрите, как обновлять статистику и переиндексировать в BOL, если вы этого не делали некоторое время. У вас есть индексы на всех полях соединения? Как насчет полей в предложении where.
Вы использовали курсор? Вы использовали подзапросы? Как насчет union - если вы используете его, можно ли изменить его на union all?
Являются ли ваши запросы доступными (Google, если не знакомы с термином.)
Используете ли вы разные, когда вы можете использовать группу по?
Вы получаете замки?
Есть много других вещей, на которые стоит посмотреть, это только отправная точка.