>> any suggestions to track or pinpoint possible resource usage problems?
Finding memory leaks is tricky. Programs can "use" memory and that's ok. A "leak" are cases where it used memory, but ended up with stuff stored in memory that it won't use again.
It's like you mom coming to your room as a teenager and deciding which stuff you have is valuable to you, and which you'll never use again. To her it's all just "stuff".
TaskManager can help to keep an eye on memory usage. You can't be "exact" about it, but you can keep an eye on it to spot trends.
The WebStrain client app is also useful for being able to repeat the same calls over and over thousands of times. This helps isolate which calls are leaking memory. (Just be sure to think about session cookies - a web stress tester that doesn't preserve the session will use memory on each call - which will only come back when the session is deleted.)
Ideally you want to find some call which when called a zillion times causes the me usage in the app to grow. Maybe it's a page with some embed code, or a report, or a web service method. If you can narrow it down to 1 call then that's a good start.
Then you start commenting out embed code in that procedure and so on.
It's a long and tedious process, and ultimately helps if you have a bit of luck. It took Chuck weeks to narrow the cause down to the ODBC driver.
Cheers
Bruce