snowdev 0 Posted April 10 On 4/9/2025 at 6:41 AM, RDP1974 said: I asked the old good chatgpt What I posted here I also tried with ChatGPT and here we are. I use the free plan and in general didnt get good answers for real world problems or context needed problems. Of course my prompt may be not good at all. I mainly use to understand something or get some examples, but (at least for Delphi) the code generated generally doesnt work. Now imagine for a optimized code… Well, its my experience till now. But its not the topic subject… Share this post Link to post
snowdev 0 Posted April 10 1 minute ago, Anders Melander said: Yes it does - but map2pdb just produces the pdb files required by the profilers. Profilers that works with pdb files includes Intel VTune and AMD μProf. I believe μProf works with both Intel and AMD processors while VTune only works with Intel processors but use the one that matches your processor to get the most precise results. I use VTune myself. Ask if you need instructions on how to get started. The process is very easy once you know how to do it but it can be challenging to get to that point 🙂 Good, I’ll try out with Intel VTune since my processor is Intel. I’ll try the instructions in your post and repo, if I got doubts I ask you in PM. Really thanks! Share this post Link to post
Stefan Glienke 2128 Posted April 10 1 hour ago, snowdev said: that only works for Maintthread functions It works very well for multithreading. You just have to change the sampling mode. 2 Share this post Link to post
RDP1974 40 Posted Monday at 03:46 PM (edited) hi, I wish to not be offtopic, and to be useful anyway there https://github.com/RDP1974/Delphi64RTL I have added concurrent queue, thread safe, from OneApi v2022.1 also a small test there (single thread, create and dispose string, 10M push + 10M pop within 1 sec)(I have not time to do multithread test now) kind regards btw. this repo is a base for a mine custom server reactor+proactor done in Delphi Edited Monday at 03:49 PM by RDP1974 Share this post Link to post
RDP1974 40 Posted 14 hours ago (edited) On 4/9/2025 at 11:14 AM, Stefan Glienke said: I don't step into that territory because you cannot simply make general-purpose collections thread-safe. It already starts with simple things like: how do you protect a list where one thread adds/removes items and another iterates over it? oneapi tbb concurrent hash map when call iterate() does a snapshot copy of the collection and publish it, meantime protecting keys with acc (similar to critical section) btw. concurrent_queue test with 10 threads is 3x quicker than TOmniQueue, and unfortunately TThreadedQueue goes in deadlock Edited 14 hours ago by RDP1974 Share this post Link to post