What is the x86-64 microarchitecture level?

Is Manajaro copying packages from Arch, or rebuilding them?
I saw that the Arch RFC-002 “Provide a x86-64-v3 microarchitecture level port” was merged (sorry, this forum forbids me to include links - just google it).

In Manjaro, are x86-64 packages build with v2 or v3 level? Is there any plan for that?

Welcome to the forum! :vulcan_salute:

Most of our packages are taken over directly from Arch in binary form, but we do of course have some custom packages, i.e. packages that were specifically developed for Manjaro — e.g. pamac, manjaro-settings-manager, et al — as well as a couple of packages that we compile ourselves with different or custom patches, such as for instance the different kernels.

We follow Arch in that regard.

Anything that Arch introduces as a distro-specific standard will immediately be imported into Manjaro Unstable, and barring any serious-enough difficulties that would have us trace back on that step, things will then be sufficiently tested by the community in Manjaro Testing, and will then percolate down into Manjaro Stable by way of the next bundled update.

Ultimately, it will then also be solidified in Manjaro Summit, which is a so-called “immutable” system. Yet, switching between the different branches — even to and from Summit — is always possible. Manjaro is very flexible in that regard.

The above all said, we always strongly advise new members to subscribe to notifications for the Stable Updates category — or to Testing Updates if you’re on the Testing branch — because unlike Arch, Manjaro is a curated rolling-release distribution, which means that with the exception of fast-tracked packages (for security reasons), updates are always bundled, and every such update always comes with a dedicated Announcements thread.

The first post of every announcement thread details all of the important changes, and the second post highlights any potential gotchas and how to work around them or avoid them.

This is specific for Arch Linux.

Most packages are imported as-is - however - kernels, nvidia drivers; arch-specific packages are exlcuded.

It is not build for any specific micr architecture

Only time will tell…

Please see the PKGBUILDs sectioni at core · GitLab select the relevant kernel for more info.

Or, just type it between two ` characters;
for example: `https://forum.manjaro.com`.

This way, others can easily copy/paste a link if they desire.

Regards.


Welcome to the Manjaro community.

As a new or infrequent forum user, please take some time to familiarise yourself with Forum requirements; in particular, the many ways to use the forum to your benefit:


Required Reading:

Resources:


Update Announcements:

The Update Announcements contain update related information and a Known Issues and Solutions section that should generally be checked before posting a request for support.


System Information:

Output of the following command (formatted according to forum requirements) may be useful for those wishing to help:

inxi --admin --verbosity=8 --filter --no-host --width

Be prepared to provide more information and outputs from other commands when asked.


1 Like

The answer is simple. All packages are currently packaged at v1 level.


x86-64 is a 64-bit version of the x86 CPU instruction set supported by AMD and Intel CPUs, among others. Since the first generations of CPUs, more low-level CPU features have been added over the years. The x86-64 CPU features can be grouped into four CPU microarchitecture levels:

Level CPU Features
x86-64-v1 CMOV, CX8, FPU, FXSR, MMX, OSFXSR, SCE, SSE, SSE2
x86-64-v2 CMPXCHG16B, LAHF-SAHF, POPCNT, SSE3, SSE4_1, SSE4_2, SSSE3
x86-64-v3 AVX, AVX2, BMI1, BMI2, F16C, FMA, LZCNT, MOVBE, OSXSAVE
x86-64-v4 AVX512F, AVX512BW, AVX512CD, AVX512DQ, AVX512VL

The x86-64-v1 level is the same as the original, baseline x86-64 level. These levels are subsets of each other, i.e. x86-64-v1 ⊂ x86-64-v2 ⊂ x86-64-v3 ⊂ x86-64-v4. For a CPU to support a level, it must support all CPU features of that version level, and, because they are subsets of each other, all those of the lower versions.

You got the same answer already from Arch: What is the x86-64 microarchitecture level? / Arch Discussion / Arch Linux Forums. You can take a look at CachyOS, if you are looking for such kind of optimizations: https://cachyos.org/. This tool may print out your CPU supported architectural levels: GitHub - HenrikBengtsson/x86-64-level: x86-64-level - Get the x86-64 Microarchitecture Level on the Current Machine

1 Like

Also there is Gentoo, where you are able to compile everything against your own CPU.

You may gain some (speed), but you may also loos some (Time for compiling and tinkering) :footprints:

I can guarantee that it is a completely new experience. (I did it myself for some time).

I now appreciate the stability of Manjaro and am happy to forego the last bit of speed for it

3 Likes

Thank you for all answers.

@Aragorn there is a ALPH https://somegit.dev/ALHP/ALHP.GO community repo, which copies and recompiles all Arch packages to v2 , v3 and v4.
I guess, it will not work alongside Manjaro repos, correct?

The chances to that are small, even if only because Arch is a little bit ahead of us with their package versions. The results will be unpredictable at best. :man_shrugging:

This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.