I would say that you don't need in-depth application knowledge to tune SQL performance at all.
You do need to figure out why the query is written the way it is, and that to some degree involves a basic amount of business knowledge. IF you can read T-SQL and understand database design, you can figure out the business as you go by asking questions and not making assumptions.
You definitely need to know how to read T-SQL, run profiler (if you don't know what the problem is ) and know how to read a query plan and use IO statistics to see where the hard-hitters are.
The first thing I usually do is re-write the T-SQL trying to minimize problem areas in the plan.
Basically I try to reduce the number of rows searched and looped through... maybe take a sort out of the plan or an aggregation.
If all that fails, I'll add an index or add TO an index, or maybe even use an indexed view in a pinch.
Thanks for reading!
Craig Outcalt