I have a much larger program but I cannot put the code here so I just created a very simple winform program which mimics the flow of the program / behaviour.
Basically the button1_click procedure will be run 2 to 10 times a second automatically by some call backs event from the server, and the i7 CPU cannot handle the procedure as there are lots of data in the dictionary and too many call backs in a gigantic procedure so we are trying to move the procedure to GPU instead of CPU. There are some calculations with numbers involved, such as sorting and addition but mostly on the list find / dictionary / filtering etc. This is not a C# program optimisation / re-write task but C# on GPU task.
As your PC and my PC are different so I created a simple stop watch for benchmark - i.e. your GPU program which runs the procedure will need to beat the stop watch elapsed in the original program. We are interested in the percentage of ticks saved to run on sample button1_click vs your gpu program.
Ideally you don't modify the loops inside - again the task is to run the code on GPU not rewrite (the original program was 40k lines of code so there is no point for you to re-write my sample dummy program attached). I don't know if your GPU program can accommodate the parallel foreach loop so I commented it out and replaced it with a normal foreach loop. At the end of the procedure it will replace the datasource for devexpress gridview/control so that the UI will show the numbers. I didn't put anything about the UI here as I don't know if I will end up putting my license on the web for free.
The user PC is on graphics card Sapphire Radeon (AMD) RX 580 however my laptop has Nvidia so I can test your solution on both AMD & Nvidia. We are happy to replace the user PC with any graphics card although we will appreciate solution that is graphics card independent. You can use any graphics card C# GPU library out there.
5 freelance font une offre moyenne de £162 pour ce travail
Hello, I have experienced with C#.NET winforms. I wetnt through our code and tried to bind your lMyQuote object in gridview than speed of stopwatch time elapsed.
HI I am Xpert P. I am senior Developer and I am Expert in .NET, C# Programming, GPGPU, Software Architecture. I have completed 200+ based projects in programming with 100% client satisfaction .I have Working experience Plus
I am a passionate and proficient C# Developer with more than 9 years’ experience producing code to a consistently high standard. I am constantly honing my skills within the web development arena, and apply my knowledge Plus