[Bug 37773] New: Handel-C compiler extremely slow under WIne compared to Windows
https://bugs.winehq.org/show_bug.cgi?id=37773 Bug ID: 37773 Summary: Handel-C compiler extremely slow under WIne compared to Windows Product: Wine Version: 1.7.33 Hardware: x86-64 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: ntdll Assignee: wine-bugs(a)winehq.org Reporter: felix.huber(a)schyf.de Distribution: --- Handel-C (a C to FPGA synthesis tool) compiles a typical design in 15 minutes when using Win 7 in a Virtualbox. When run under wine, no special error messages appeared, but after 10h the compilation was still not finished and I aborted it. I re-ran it with operf and stopped after some 15minutes. The result was that 95% of the time was spent in heap.c of ntdll.dll.so in function HEAP_FindFreeBlock. So I ran wine with WINEDEBUG=trace+heap,+relay and I see a lot of malloc() and free(), but execution is so slow that I can't really see what's going on. The problem might not be related to Handel-C but the way wine manages the heap, as I see also lots of malloc/free with other windows applications, even when they're idle. Tests were done with Opensuse 64bit 12.3, 13.1 and 13.2 with Kernel from 3.11 to 3.18, all with the same slow performance. The setup was always a clean installation with only MFC42 installed with winetricks, as this was needed by the app. No differences were found when switching between native and builtin MSVCRT dlls. I wonder how I can narrow down the cause of this poor performance. -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=37773 Michael Müller <michael(a)fds-team.de> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |michael(a)fds-team.de --- Comment #1 from Michael Müller <michael(a)fds-team.de> --- Hi, could you please test whether this patch increases the performance of the program? https://github.com/wine-compholio/wine-staging/blob/master/patches/ntdll-Hea... If you don't want to compile Wine on your own, you can also check if you encounter any performance difference using Wine Staging which includes this patch ( http://www.wine-staging.com/install.html#user-content--opensuse ). Regards, Michael -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=37773 --- Comment #2 from felix.huber(a)schyf.de --- I recompiled with the patch, no difference. -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=37773 super_man(a)post.com changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |super_man(a)post.com --- Comment #3 from super_man(a)post.com --- (In reply to felix.huber from comment #2)
I recompiled with the patch, no difference.
It could be worth to retest. 1.7.33 is really old compared to 1.9.6 that's latest released. -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=37773 Józef Kucia <joseph.kucia(a)gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- See Also| |https://bugs.winehq.org/sho | |w_bug.cgi?id=43224 -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=37773 --- Comment #4 from felix.huber(a)schyf.de --- It seems like some recent changes to heap.c boosted the performance to about 90% of the original timing. That's good enough for me. This report can be closed. -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=37773 Anastasius Focht <focht(a)gmx.net> changed: What |Removed |Added ---------------------------------------------------------------------------- Resolution|--- |FIXED Status|UNCONFIRMED |RESOLVED Summary|Handel-C compiler extremely |Handel-C compiler extremely |slow under WIne compared to |slow under Wine compared to |Windows |Windows (heap CC| |focht(a)gmx.net --- Comment #5 from Anastasius Focht <focht(a)gmx.net> --- Hello Felix, --- quote --- This report can be closed. --- quote --- Sure. Could you tell which vendor/toolsuite/version you used to report the bug? Having proper detail/tracebility improves Bugzilla query quality and tracking of Wine/app regressions. It would be even better if you can figure out the commit that fixed it (although not required): https://source.winehq.org/git/wine.git/history/HEAD:/dlls/ntdll/heap.c There is only one relevant commit to that file in the data range from your initial report until now: https://source.winehq.org/git/wine.git/commitdiff/2175852f5a45eebef5dcbbad99... --- quote --- ntdll: Add free list buckets for every arena size up to 0x100. author Huw Davies <huw(a)codeweavers.com> Mon, 9 Oct 2017 12:15:52 +0000 (13:15 +0100) committer Alexandre Julliard <julliard(a)winehq.org> Mon, 9 Oct 2017 17:52:29 +0000 (19:52 +0200) --- quote --- Tidbit: This brings back some memories on my own. I was doing some hardware design/development with VHDL on Xilinx FPGAs with Xilinx/Cadence/Synopsys tools on Sun UltraSPARC machines as part of my EE/CS university degree in the mid-1990s. Never touched System-C/Handel-C subject as I went to embedded systems software development ;-) Regards -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=37773 Anastasius Focht <focht(a)gmx.net> changed: What |Removed |Added ---------------------------------------------------------------------------- Summary|Handel-C compiler extremely |Handel-C compiler extremely |slow under Wine compared to |slow under Wine compared to |Windows (heap |Windows (heap manager) -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=37773 --- Comment #6 from felix.huber(a)schyf.de --- I did a binary search and I can confirm that this commit https://source.winehq.org/git/wine.git/commitdiff/2175852f5a45eebef5dcbbad99... fixed it. The S/W I use is: Vendor: Mentor Graphics Toolsuite: Handel-C Version: 5.3, 5.4 Re-tidbit: Handel-C vs VHDL is like C++ vs 4004 assembler. I do everything with it: VGA output with VT100 emulation, FFTs, floating point arithmetic and all that in FPGAs with no µP :-) -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=37773 Anastasius Focht <focht(a)gmx.net> changed: What |Removed |Added ---------------------------------------------------------------------------- Summary|Handel-C compiler extremely |Mentor Graphics DK Design |slow under Wine compared to |Suite 5.3/5.4 - Handel-C |Windows (heap manager) |compiler extremely slow | |under Wine compared to | |Windows (heap manager) Fixed by SHA1| |2175852f5a45eebef5dcbbad990 | |6509e736d596a URL| |https://www.mentor.com/prod | |ucts/fpga/handel-c/dk-desig | |n-suite/ --- Comment #7 from Anastasius Focht <focht(a)gmx.net> --- Hello Felix, thanks for the information, I've updated the ticket with it. Regards -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=37773 Alexandre Julliard <julliard(a)winehq.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED --- Comment #8 from Alexandre Julliard <julliard(a)winehq.org> --- Closing bugs fixed in 3.14. -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
participants (1)
-
wine-bugs@winehq.org