Provide x86-64-v2 #17

Closed
opened 2021-07-09 22:46:49 +02:00 by anonfunc · 17 comments
Owner

I plan to also provide x86-64-v2, even if the speed improvements are almost negligible.

Maybe it is even possible to get something like a x86-64-v2.5/x86-64-v2+ from combining baseline x86-64-v2 with AVX, which most "not-quite v3" CPUs support (Ivy Bridge for example). Need to consider if this supports enough CPUs and brings enough performance to be viable.

I plan to also provide x86-64-v2, even if the speed improvements are almost negligible. Maybe it is even possible to get something like a `x86-64-v2.5`/`x86-64-v2+` from combining baseline `x86-64-v2` with AVX, which most "not-quite v3" CPUs support (Ivy Bridge for example). Need to consider if this supports enough CPUs and brings enough performance to be viable.
anonfunc added the
enhancement
label 2021-07-09 22:46:49 +02:00
anonfunc added a new dependency 2021-07-09 22:47:04 +02:00
anonfunc added a new dependency 2021-07-09 22:47:12 +02:00
anonfunc removed a dependency 2021-07-09 22:47:17 +02:00
anonfunc changed title from Add x86-64-v2 to Provide x86-64-v2 2021-07-09 22:51:39 +02:00
anonfunc added the
help wanted
label 2021-07-09 23:00:54 +02:00

My home server has a Xeon E5-2697 v2 which is a 12 core 24 thread cpu that supports up to x86-64-v2. Is there some way that I could setup a build server and contribute to a possible x86-64-v2 repo?

My home server has a `Xeon E5-2697 v2` which is a 12 core 24 thread cpu that supports up to `x86-64-v2`. Is there some way that I could setup a build server and contribute to a possible `x86-64-v2` repo?
Author
Owner

'Distributed' building like that brings some challenges:

  • signing
  • coordinating (if multiple 'buildserver' exist)
  • distribution (how to get build packages were they need to be)

All technically possible to implement, just very time-consuming.

I actually plan to enable v2 soon, just waiting for gcc 11.2. As soon as that hits the official repos, v2 can start building. Otherwise some big packages are just gonna be OOM-killed, see the linked issue for more.

'Distributed' building like that brings some challenges: - signing - coordinating (if multiple 'buildserver' exist) - distribution (how to get build packages were they need to be) All technically possible to implement, just very time-consuming. I actually plan to enable v2 soon, [just waiting for](https://git.harting.dev/anonfunc/ALHP.GO/issues/52#issuecomment-696) `gcc` *11.2*. As soon as that hits the official repos, v2 can start building. Otherwise some big packages are just gonna be OOM-killed, see the linked issue for more.

Ah ok.

Ah ok.
Author
Owner

I just started the v2 build. It'll take a few days to build the whole repo. The v3 build-process should not be affected besides a few delayed updates due to higher load.

I just started the v2 build. It'll take a few days to build the whole repo. The v3 build-process should not be affected besides a few delayed updates due to higher load.

ooo, nice to hear the progress! My x86-64-v2 machines will love that little performance bump, keep us posted!

ooo, nice to hear the progress! My x86-64-v2 machines will love that little performance bump, keep us posted!

I just started the v2 build. It'll take a few days to build the whole repo. The v3 build-process should not be affected besides a few delayed updates due to higher load.

Nice when I will finally get a connection back I could report if they're any problem on my v2 machine

> I just started the v2 build. It'll take a few days to build the whole repo. The v3 build-process should not be affected besides a few delayed updates due to higher load. Nice when I will finally get a connection back I could report if they're any problem on my v2 machine
anonfunc removed the
help wanted
label 2021-11-29 16:59:18 +01:00
Author
Owner

x86-64-v2 will be the first -march which had LTO enabled from the very start (so all packages buildable with LTO are going to be build with it). I'm most interested in the resulting performance increase with SSE(x86-64-v2 is mostly SSE)+LTO.

`x86-64-v2` will be the first `-march` which had LTO enabled from the very start (so all packages buildable with LTO are going to be build with it). I'm most interested in the resulting performance increase with SSE(x86-64-v2 is mostly SSE)+LTO.
Author
Owner

It's about 20% done, ETA Friday.

It's about 20% done, ETA Friday.

It's about 20% done, ETA Friday.

Just got some connection back so i will be ready to test it all when it ready

> It's about 20% done, ETA Friday. Just got some connection back so i will be ready to test it all when it ready

Is there some place to see like what packages are currently building/queued?

Is there some place to see like what packages are currently building/queued?
Author
Owner

Sure, the package status page. Search (ctrl+f) for building or queued (or just check to total numbers in the footer).

Sure, [the package status page](https://alhp.anonfunc.dev/packages.html). Search (ctrl+f) for *building* or *queued* (or just check to total numbers in the footer).

Ah ok. Got it!

Ah ok. Got it!

It's about 20% done, ETA Friday.

Any update on the pourcentage of pacakages that is build now for the V2 architeture?

> It's about 20% done, ETA Friday. Any update on the pourcentage of pacakages that is build now for the V2 architeture?
Author
Owner

Since electron* got like 3+ updates this week things slowed done somewhat (each electron batch takes approximately 0.5d to 1d), so we sit at ~50% done.

The footers queued gives an idea of how many packages are left. If it goes below 100 packages I would consider the v2 build as done.

Since `electron*` got like 3+ updates this week things slowed done somewhat (each electron batch takes approximately 0.5d to 1d), so we sit at ~50% done. The footers *queued* gives an idea of how many packages are left. If it goes below 100 packages I would consider the v2 build as done.

Since electron* got like 3+ updates this week things slowed done somewhat (each electron batch takes approximately 0.5d to 1d), so we sit at ~50% done.

The footers queued gives an idea of how many packages are left. If it goes below 100 packages I would consider the v2 build as done.

Oh geez i didn't electron build would take such a long time, and okay i'll will keep my eyes out on it them

> Since `electron*` got like 3+ updates this week things slowed done somewhat (each electron batch takes approximately 0.5d to 1d), so we sit at ~50% done. > > The footers *queued* gives an idea of how many packages are left. If it goes below 100 packages I would consider the v2 build as done. Oh geez i didn't electron build would take such a long time, and okay i'll will keep my eyes out on it them
Author
Owner

Only [core] and [extra] left.

Only **[core]** and **[extra]** left.
Author
Owner

It finished. I tested it on my only v2 machine and it works fine so far. I'm closing this issue, since its topic is resolved. Feel free to comment on any before-after benchmarks you may run or other non-issues.

If you experience any issue with v2, please open a new issue.

It finished. I tested it on my only v2 machine and it works fine so far. I'm closing this issue, since its topic is resolved. Feel free to comment on any before-after benchmarks you may run or other non-issues. If you experience any issue with v2, please open a new issue.
Sign in to join this conversation.
No description provided.