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.


You are receiving this mail because: