- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I got an error box when applying CFinder for quicksort. It says "Get max thread error" and "Can't queue data" a while after I pressed start button. It seems that CFinder can't get the thread information in the first run but can I solve it? Thanks.
Greetings,
Sunwei
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I'll see if we can get the same error and work on a solution this coming week.
Thank you for the feedback. Please check back in a few days and I hope to have a recommendation/update/fix by then.
Cheers,
Aaron
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
That's fine. The PC I use is DELL latitude D620 laptop with Intel Core Duo 2.0G with 2048KB cache, 2G DDR667 SDRAM, running Windows XP. The compiler is Visual C++ 2005 Express free version. Thanks.
Greetings, Sunwei
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Sunwei,
We couldnt recreate the error and would like to get to the bottom of the issue.
Could you please:
1) To Send us his quicksort binary (.exe) file.
2) All the necessary info like: duration, sampling rate and so on.
3) How he ran CFinder. For example, did he just entered the info and let CFinder? Did he do anything else like running other programs when CFinder is running?
4) Did his program quicksort still run after CFinder completed the first run or terminated?
I'm not a big fan of posting my work email on forums, but will share my hotmail account for you to sendaarontersteeg@hotmail.com. You might need to change the exe to xex to get by the spam filters. Let me know when the email has been sent and I'll go check it.
Cheers,
Aaron
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
In looking briefly at CFinder, the biggest problems using it for Java would be
- The thread number in the concurrency tool is not particularly meaningful for Java developers. This is because the JVM creates some threads that the Java developer is typically unaware of.
- There are Java interfaces for querying the "name" and threadgroup of assorted threads. These may be of value if one wanted to extend this tool to be more meaningful for Java developers.
- The CFinder tool runs the application twice. There is no guarantee that threads will be created in the same order on subsequent executions. This is the same problem with native applications however.
- Intel's threadchecker and threadprofiler tools do not support Java (that I am aware of). While this is unfortunate, there are some other options for subsequent analysis.
- Other tools, such as VTune help identify the most time consuming Java code to help pinpoint pieces of the code where parallel constructs should be used.
- Other tools, such as the Eclipse TPTP profiler provide threading views customized for Java that help identify the most critical locks and interactions between threads.
- These together should be used to identify opportunities for additional thread parallelism. In addition, if the tools identify some core hotspots in your applications hashmaps, queues, etc, one should consider porting their java application to usejava/util/concurrent parallelized versions. These are an approximateJavaanalogue to the ThreadBuildingBlocks for native Applications.
Other than this, it seems like CFinder would be as helpful for Java developers as for native developers who want to know if their application threads are efficient and whether their applications are written to achieve best performance on multicore and multiprocessorplatforms.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I've tried to use CFinder on some simple applications and have run into a few anomolies/annoyances.
- All the "real" apps that I've tried to run end up w/ %time, min, avg as zero (but a valid max time) and no concurrency information
- CFinder with app of IExplore.exe and parameter of http://google.com
- CFinder with app of notepad and pasting bunches of stuff for 20sec
- admittedly this only has a single thread...
- CFinder with an app ofjava and a "hello world" application parameter
- I cannot help but think I have something installed wrong? It could be that I have an incompatible version of the PDH library installed on my system? I assume that PDH is being used to get the windows system monitor details...
- annoyance... It would be nice to be able to type in (or paste) the application to run instead of having to browse for it.
- annoyance... I'm still not 100% sure I understand why the application needs to run twice. For some apps (particularly short running ones), the second run is sometimesless interesting than the first run because of assorted cache behavior changes that may occur the second time around...
- For example when running with IExplore and google.com, the first time (today) took about 20secs while the second time only took about 10-15secs... [browsers tend to have some heuristics to decide how often they need to update their caches, etc]...
Thx, Chris
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thank you very much for posting. We are very glad that you are take time and trying CFinder. We are collecting feedback for future CFinder release. Here are a few thoughts on your specific comments.
1) We value your concern about Java. Currently CFinder is not meant for Java. If we collect enough requests for Java, we will see how best to add Java support to future release of CFinder.
2) CFinder has been tested on many applications including multimedia and gaming applications.
3) I will take your recommendation about the ability to type in or paste in the path. We will add this to the list of future features for the next CFinder release.
4) Cfinder needs to run the app twice. In the first run, Cfinder will obtain the maximum number of threads generated by the app since there is no way to know ahead of time how many threads are created by the app. Threads can be dynamically created and destroyed during the run. CFinder will actually collect the data in the second run.
Again, thank you very much for providing valuable feedback. I know just like all of us, we are very busy, but you still take your valuable time from your busy schedule testing CFinder and providing feedback. Future CFinder will get better due to valuable feedbacks as yours.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Here is the conclusion, check out the post for the full detail of his thoughts.
Trial Run for the CFinder Concurrency Analysis Tool
CFinder is a nice little free tool for quickly analyzing the degree to which a Windows program executes concurrently in a specific run (or set of runs). Its a clear step up from the simple timing of execution instances that I applied for years to test the effect of edits to my multithreaded applications. I think Ill keep it!
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I've got "-1073738824" "Add counter failed" MessageBox, then "Error" "Cannot get elapsed time!!!".
Here is output from command-line utility:
======== cut ========
CFinder 1.0
---- System Detection ----
Total Sockets: 1
Total Cores: 2
Total Logicals: 2
Multi-processor: No
Multi-core: Yes
Hyper Threading: Not capable
Computername: HAX
System information:
OEM ID: 0
Processor Architecture:Native x86 (Intel)
Processor Level: 6
Processor type: 586
Page size: 4096
Hardware Profile:
DockInfo: 7
Profile Guid: {4f21c240-1f78-11da-aba1-806d6172696f}
Friendly Name: Profile 1
CPU Frequency (MHz): 2395
size 46
---- Application Detection ----
Application Name:D:Gamescrayoncrayon.exe
Application Parameters:
Sampling interval (msec):100
CPU Utilization (percentage)
Min: Avg: Max:
Number of Threads:
Min: Avg: Max:
Elapsed Time (ms):
Number of Samples: 0
Press Enter key to exit...
======== cut ========
How can I solve this?
Note:
1) I have downloaded version 1.1 from Intel site. Command line utility shows "CFinder 1.0", and "Product version" in executable resources is 1.0 too.
2) archive contains files "0_WARNING.HTM" and "1_WARNING.HTM", which should not be there.
3) there is no description for "Manual capture" option in manual.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I'll talk to Khang about your issue and get back to you shortly.
Thank you for posting your feedback.
Aaron
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
It doesn't run with my app, complaining about not being able to find a thread count, something quite similar to one of the messages above.
You can download a version of my app at www.gpuviewer.com, if you want to check this out for yourself.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I am newbie in TBB and CFinder. I was trying to test sub_string_finder_pretty (which i downloaded from TBB website, it is one of Getting Started program) but i am getting following error while executing it with CFinder
"Get Max Thread Error"
"Cannot get total number of threads"
Is there any work around for this??
Cheers!!
Anuj
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I can't get it to work. After selecting the path to the executable and pressing START, I see "-1073738824" "Add counter failed" MessageBox, then "Error" "Cannot get elapsed time!!!" Even at the program, which operates at 100%, such as a notepad.
Please help.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I have the same problem! Do you have found the problem?
Thank You.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
PostAQuestion:
I can't get it to work. After selecting the path to the executable and pressing START, I see "-1073738824" "Add counter failed" MessageBox, then "Error" "Cannot get elapsed time!!!" Even at the program, which operates at 100%, such as a notepad.
Please help.
And I get the same error
There is something resolved, some patch?
Thanks!

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page