Profiling a COM application? - vb6

I have a big application written in Visual Basic 6 and I need to profile it.
Is there something like ANTS Profiler but for COM applications?

I used to use VBWatch. I had a good experience with it and it helped me nail down and resolve some pesky performance problems

Have a look at VTune from Intel it has native profiling as well.
If you're having problems using VTune try AQTime profiler from AutomatedQA instead.

GlowCode is another good tool. I've used it successfully with VB6. The nice part is that you don't need to instrument or recompile your code. All you need is the symbols (.pdb file) that VB6 can already create for you.

Better late than never? VB6 has a "pause" button, right? Not only is it free, and requires no installation, but in my opinion it is by far the best tool for locating performance problems.

AutomatedQA
That's your best bet.

Related

Troubleshooting Performance Using Qt Debugger

Hi I am student programmer using Qt to build some editing applications for work and I'm hitting an issue in my debugging practices that I am not sure how to approach. I have QTableWidget that takes at least 10 secs to fill when 100+ rows are brought in.
I am wondering if Qt's debugger has any tools to help pinpoint where the operation is taking the most of its time at. I have looked over the operation several times and everything looks right and efficient so I am left pretty lost. I have looked over the debugging and analyzing sections of the debugger and didn't see anything that looked helpful as I'm pretty sure my symptoms aren't that of a memory leak. Thanks for reading my post and thanks in advance for any help in this issue.
If you are having performance issues and want to see where in your application time is spent you need to do some Profiling. Depending on your platform and chosen IDE the tools differ and you should look into what is most commonly used.
For Linux there are few tools to pick from. One I found quite helpful is the Valgrind tool Callgrind, there is a quite nice visualizer for it called KCachegrind that should be available in your distributions repository.
Since you are using Qt there is a real possibility that you also use Qt Creator then I found something on the integration of Valgrind in Qt Creator.

Any way to get Processing working in VS?

Is there any convenient way to get the Processing language working in Visual Studio?
Haven't used VS much, but do check out this great answer on the Best Java IDE for VS.
I am not fully aware of your setup/needs, but I would say, if Processing is must and you don't find the 'Processing IDE' usable, use eclipse.
If you need to use bits and bobs that Processing has to offer, why not try OpenFrameworks, which is C++ and is very similar to Processing.
Depending on your needs, might be worth having a quick look at Cinder or Polycode which are C++ also. Personally I think OpenFrameworks is the closest to Processing and it's fairly easy to port code from Processing to it.
HTH

Are there any VB6 Performance Tools?

I'm working on a CPU-bound VB6 application, and I was wondering if there are any performance tools for VB6 along the lines of Performance and Coverage Analyser? Does anyone know of any?
VB Watch Profiler is supposed to do these things. I haven't used it myself.

Most important feature in Visual Studio 2010

What is the most important or awaited feature in Visual Studio 2010??
The Historical Debugger. This records what happens during a run, and lets you step backwards and forwards through time in the debugger.
As far as the IDE goes, proper, well-thought-out multi-monitor support is a big one..
Support for parallel development.
It is running on top of WPF.
F# :)
The new text editor written in WPF is very interesting. There is also a new extensibility framework that will make writing add-on for VS much easier (in my opinion the most important new feature). The tools for SharePoint development are nice additions. There is a new debugger that records the debugging process and has greater support for parallel programming.
Usable SharePoint integration...bring it on!
The dynamic language runtime will lead to much more readable code when dealing with COM application and will be interesting to see where it takes staticaly typed languages.
Afair, they promised to include WiX 3.0. Although not perfect tool (built on top of ugly MSI plus some xml hell) but we don't have alternatives (at least from Microsoft), do we (tried their Setup projects)?
Architectural View(Designer) of the Application
This enables the new developers to understand the application flow more quickly.
Improvment of the TDD Good Channel 9 example. It way simpler now with an awesome intelli-sense.

Code Profiling in Visual Studio 2005

I have a Visual Studio 2005 Solution workspace which in turn has 8 projects included in it. I want to profile the complete code(all the projects) and get some measure about the absolute cycles taken by each function to execute, or at least percentage cycle consumptions.
I checked out help for VS 2005, and also the project setiings options but could not find any pointers on hwo to get the profile info.
Any help regarding this would be beneficial.
-AD.
If your application is not particularly processor intensive, redgate ANTS Profiler is a good choice - the line-by-line stats can come in quite handy, and the whole product is clean and well-designed.
If your app needs a lot of CPU to operate normally, however, most of the .NET profilers on the market won't be able to handle it. The only two that I have ever found that will work for a really heavy-weight application are JetBrains dotTrace and YourKit. The two are very similar, which is not surprising, given that YourKit seems to have been started by a former JetBrains employee. I personally prefer dotTrace, but that may just be because that is what I used first, and there has never been any good reason to switch.
I have tested ANTS, AQTime, DevPartner, GlowCode, Borland OptimizeIt and Intel VTune, and all of them have too much overhead to handle a demanding application. (VTune is a possible exception, but it is so horribly complex to configure and use that I was never able to figure out exactly what it could handle. It is also very expensive.)
I guess the inbuilt profiler of Visual Studio 2005 comes onyl with the Developer Edition and Team Edition. I have a Professional edition which, it seems doesnot have the inbuilt profiler tool.
-AD
I've used both the profiler in Compuware’s DevPartner (I like to still call it “TrueTime”) and Rational's Quantify. I always liked Quantify better, but as I've moved between companies DevPartner is usually already the “standard”.
Both are expensive, but they (seem to) add so much value that any commercial shop should have no problem investing in some seats.
Quantify didn’t require special rebuilds of the project – which was GREAT. It also crashed less (that’s not saying much, it had its own issues). DevPartner also tends to break as each new version of Visual Stuido was release (maybe this is better now?). Buy the yearly maintenance agreement if you go this way.
That said, I’ve often just write a class remembers the time at construction and spits out (log file) the elapsed time in its destructor. I used QueryPerformanceCounter. I’d stick this class at the top of the function I’d want to time. You could get fancy with making it a macro, use the preprocessor to include this class only under a special build…
I recommend you EQATEC profiler which also includes in its site a tracer.
Also it's free and easy to use.
alt text http://www.eqatec.com/tools/profiler/profiler-logo.gif
We use DevPartner with Visual Studio 2005. It gives you performance analysis of the specific projects in your solution you want to look at. We also use it for memory management analysis, and error analysis. Is commercial tool, so it's not free.
Red-gate's Profiler is great for this.
I use Jebrains profiler is very easy to use and performs very well too.
If your app needs a lot of CPU to operate normally, however, most of the .NET profilers on the market won't be able to handle it.
I have used a trial version of RedGate Ant's profiler on an optimizing algorithm that normally uses up to 100% CPU on a single core machines and though slow it managed to get through and report all I needed to know. Extremely helpfull tool. I wonder what kind of algorithms have you run on the Ant's profiler.
Has anyone used the VS profiler ?

Resources