(trying to get better about just blogging in the moment, instead of saving it up ...)
I saw a post abut the next release of ClearTrace at http://weblogs.sqlteam.com/billg/archive/2009/05/27/ClearTrace-2008.34.aspx that mentioned its heavy use of SQLBulkCopy to speed up Trace loading, and I was reminded about my own experiences with it:
SQLBulkCopy is part of SQLClient and is pretty cool. I did some performance testing of it last year, trying to match BCP and BULK INSERT's speed with it. Could only get about 50% as fast because of the amount of CPU time it was spending in type conversions.
Turns out that both the .Net and the default SQL Server text-to-numeric (and text-to-datetime) conversion routines have a lot of overhead, I suspect to handle the zillions of different text-numeric formats. Since I knew exactly what my text-numeric formats were I hand coded my own type-conversion routines (in VB no less!) and almost doubled its speed. I was curious if anyone else had noticed the same thing?
(I have attached the code in a .ZIP file here).