Comments
Sort by recent activity
Hi Scott,
That's interesting. I generally find that profiling with ANTS Profiler 4 in detailed mode, with line level timings, is roughly twice as fast as running ANTS Profiler 3 against the same application with profiling disabled. I guess it might be down to differences in processor type, or possibly some other factor, such as level of multithreading, that we've not encountered before.
What's your machine spec? For reference I'm on a Core 2 Duo running at (I think) 2.6 GHz, 32-bit Windows XP, 4 GB RAM (not that you can see all of it). I also have a Vista 64 machine, with roughly the same spec, although I've not yet tried it on that.
Let me look into this a bit further and get back to you.
Thanks,
Bart / comments
Hi Scott,
That's interesting. I generally find that profiling with ANTS Profiler 4 in detailed mode, with line level timings, is roughly twice as fast as running ANTS Profiler 3 against the same ap...
Hi Scott,
I have something for you to try here, although it's possible some of your timings may get a little weird.
Exit ANTS Profiler 4, if it's running, and open the PerformanceProfilerSettings.xml file in your favourite text editor (although if it's TextPad, I'd use Notepad instead, because the former has a nasty habit of rendering XML files unreadable). For me this file lives in "C:\Documents and Settings\bart.read\Local Settings\Application Data\Red Gate\ANTS Performance Profiler 4\PerformanceProfilerSettings.xml". The location is slightly different on Vista, under "C:\Users" I think.
Now find the UseThreadAffinity option (this isn't exposed through Tools > Options). It looks like this by default:
<Property Name="UseThreadAffinity">
<Object Type="System.Boolean">True</Object>
</Property>
Now change the value to "False":
<Property Name="UseThreadAffinity">
<Object Type="System.Boolean">False</Object>
</Property>
Save the file and then start up ANTS Profiler 4 again. Now try profiling, and hopefully you should see some performance improvement.
What this does is to tell ANTS Profiler to allow your process to take advantage of additional CPU cores. Now, because the timers each CPU core in your system aren't synchronized, and because threads can be arbitrarily swapped between CPU cores, this can cause some slightly odd timing artifacts to appear. This shouldn't cause significant problems where methods take a relatively long time to execute though.
Let me know if this helps.
Thanks,
Bart / comments
Hi Scott,
I have something for you to try here, although it's possible some of your timings may get a little weird.
Exit ANTS Profiler 4, if it's running, and open the PerformanceProfilerSettings.x...
Hi lusid,
I'm pretty sure you can open an SVG in PaintShop Pro and then output it as something else, like a PNG. Obviously that's not much help if you don't have PSP. I just checked Paint.NET, which is free, as well but it doesn't look like that will do it. I suspect The GIMP--also free--could probably pull it off though.
Hope that helps.
Bart / comments
Hi lusid,
I'm pretty sure you can open an SVG in PaintShop Pro and then output it as something else, like a PNG. Obviously that's not much help if you don't have PSP. I just checked Paint.NET, whic...
Hi Mike,
Thanks for the kind comments, they're greatly appreciated! I must redress the balance a bit though because the last version of SQL Prompt that I had any significant involvement with was 3.7 (and that was just a few bug fixes). Tanya had already taken over its project management at that point, with David Atkinson as product manager, and they've been responsible for looking after it since then, and have overseen the integration of a lot of the cool new features, such as parameter help, the column view, and latterly SQL Server 2008 support in SQL Prompt 3.9. I know there are big plans for 4.0, which they're just getting under way with now, and the tool's certainly in good hands so there are high hopes for it.
We're really excited about the possibilities for Reflector, but with 1.5 million (more?) users, the first and most important thing we'll be doing is a lot of listening to the community.
Thanks again!
Bart / comments
Hi Mike,
Thanks for the kind comments, they're greatly appreciated! I must redress the balance a bit though because the last version of SQL Prompt that I had any significant involvement with was 3....
Ahem. Zip file:
1. Extract files.
2. Dismiss prompt asking me if I want to overwrite existing files.
3. (First time only admittedly), create shortcut.
4. Drag shortcut to quicklaunch bar.
5. Launch the program. [image]
Seriously though, I can see your point about Vista and UAC, and welcome screens for that matter. Maybe we could come up with some sort of double-click express installer that skips most of the guff, although UAC would continue to be a problem. Bear in mind though that Reflector only needs installing the once and will cheerfully upgrade itself... of course, that quite possibly wouldn't work if it had to download an installer (and again, the wonderful UAC could really cause problems here).
Like I say, I can't say if/when it'll happen, and there are other ancillary issues to be considered. I guess we'll see, and we're always open to user feedback. If we were to get an overwhelming quantity of feedback either way that would certainly influence any decision about this.
Cheers,
Bart / comments
Ahem. Zip file:
1. Extract files.
2. Dismiss prompt asking me if I want to overwrite existing files.
3. (First time only admittedly), create shortcut.
4. Drag shortcut to quicklaunch bar.
5. Launch...
Hi Colin,
It's funny you mention that. We've just set up an internal wiki page for people to add suggestions to, and that was one of the first things I wrote on it. I can't tell you if/when, it'll happen, but I can tell you you're not alone in wanting this, even amongst folks here at Red Gate. (I should also say that I can totally understand why Lutz Roeder never created an installer--they're the biggest pain in the neck you can possible imagine, and our collective will to live has been thoroughly sucked by the process of trying to get an installer for ANTS Profiler 4 that actually works properly all of the time on every platform.)
Thanks,
Bart / comments
Hi Colin,
It's funny you mention that. We've just set up an internal wiki page for people to add suggestions to, and that was one of the first things I wrote on it. I can't tell you if/when, it'll ...
Hi Jeff,
I'd love to be able to say I'm entirely shocked that things could become that screwed up, but over time I've come to accept the face that performance counters, and the APIs used to access them, are extremely fragile. I am slightly surprised by this, but not as much as you might expect.
Now, the performance counters functionality is fairly core to the way the ANTS Profiler UI works, though not to the profiling engine as such, so I think whilst I can say that we'll handle the exception more gracefully than simply falling over, as seems to be the case at the moment, given the late stage of the project, and the other work we have still outstanding, I think it would be entirely wrong of me to promise anything more than that for the 4.0 release. That's not to say that it definitely won't work, but I certainly can't promise that it will, and it may be that we have to push it back to a patch release at a later date.
As I said, I'm not really shocked by this, but it is unanticipated, and we hadn't envisaged encountering a problem like this so late in the day, partcularly after such an extensive early access programme. The best thing I can suggest for now is that you attempt to fix your machine's performance counter configuration.
You don't say which OS version you're using, but you may find the following helpful (applies to Windows 2000 through 2003 server): http://support.microsoft.com/kb/300956
There's also some additional information in this thread that may prove to be useful: http://channel9.msdn.com/forums/TechOff ... corrupted/
Hope that helps.
Thanks,
Bart / comments
Hi Jeff,
I'd love to be able to say I'm entirely shocked that things could become that screwed up, but over time I've come to accept the face that performance counters, and the APIs used to access ...
Hi Jeff,
I'm planning to write the error information out to the log file, with an entry for every counter for which the problem occurs, so then you'll be able to see which counters are failing.
One thing you might try doing is deselecting all the performance counters in the setup dialog before you run the profiler (they're on the second tab). You won't be able to disable the "% CPU (Process)" counter, but then if that doesn't work well... you're a bit stuck for now, although it might be worth seeing if you can monitor this for a process in PerfMon, and then if so, re-run ANTS Profiler.
You could also try writing some .NET code that creates instances of the PerformanceCounter class (in System.Diagnostics) for the counters you're interested in to see which ones cause the exception to occur. Bear in mind that for ANTS Profiler, many of the counters are instanced, i.e., associated with a particular process, so you'll need to run a process for which you want to grab these counters as well.
We'll make sure our fix is in for the RC which, all being well, should be available some time on Monday 18th August.
Thanks,
Bart / comments
Hi Jeff,
I'm planning to write the error information out to the log file, with an entry for every counter for which the problem occurs, so then you'll be able to see which counters are failing.
One...
Hi again Jeff,
So handling this exception isn't a problem for us at all, however I wanted to know what was actually causing it because our fix will still mean that you won't see any data for this counter, or any others affected by this problem. I dug through the IL using Exception Hunter and found the line that was causing the problem easily enough, however it wasn't really illuminating so I did a web search and came up with this: http://forums.msdn.microsoft.com/en-US/ ... 4c723f572/
The response here is that the performance counter information on your machine has become corrupted, so (somehow) you'll need to sort that out if you want to see any information for the performance counter. I'd suggest running PerfMon since this does seem to fix some problems with incorrectly published performance counters, but I wouldn't guarantee it.
Hope that helps. We'll get the exception handler in for the release candidate.
Thanks,
Bart / comments
Hi again Jeff,
So handling this exception isn't a problem for us at all, however I wanted to know what was actually causing it because our fix will still mean that you won't see any data for this c...