Bug ID | 1202197 |
---|---|
Summary | 7zip is 30% slower than the original due to missing ASM in spec build (easy fix is included) |
Classification | openSUSE |
Product | openSUSE Tumbleweed |
Version | Current |
Hardware | x86-64 |
OS | openSUSE Tumbleweed |
Status | NEW |
Severity | Normal |
Priority | P5 - None |
Component | Other |
Assignee | screening-team-bugs@suse.de |
Reporter | c.j@tuta.io |
QA Contact | qa-bugs@suse.de |
Found By | --- |
Blocker | --- |
Created attachment 860657 [details] asmc-2.34.15-0.src.rpm + 7zip-22.01-1.2.src.rpm The Problem: ASM support is missing (it's included in the original from 7zip.org). The benchmark (7zz b) shows 30% slower decompression and slightly slower compression. How to fix: The README from the 7zip.org source says that the ASM build with asmc requires to build CPP/7zip/Bundles/Alone2/b/g_x64/7zz instead of CPP/7zip/Bundles/Alone2/b/g/7zz. The solution: 1. Install asmc I took this https://build.opensuse.org/package/show/home:enzokiel/asmc and updated it to the latest git version 2.34.15 (asmc-2.34.15-0.src.rpm is attached). 2. Edit the 7zip spec (corrected version 7zip-22.01-1.2.src.rpm is attached) as follows (this is according to the 7zip.org source README): BuildRequires: asmc #build without ASM #%make_build -f ../../cmpl_gcc.mak DISABLE_RAR_COMPRESS=1 #build with ASM %make_build -f ../../cmpl_gcc_x64.mak DISABLE_RAR_COMPRESS=1 #install version without ASM #install -Dt %{buildroot}%{_bindir} CPP/7zip/Bundles/Alone2/b/g/7zz #install version with ASM install -Dt %{buildroot}%{_bindir} CPP/7zip/Bundles/Alone2/b/g_x64/7zz Conclusion: The correctly build 7zip is now working at a speed comparable to the original from 7zip.org.