Usecase idea.

Question about which tools to use, bugs, the best way to implement a function, etc should go here. Don't forget to see if your question is answered in the wiki first! When in doubt post here.
nexos
Member
Member
Posts: 1081
Joined: Tue Feb 18, 2020 3:29 pm
Libera.chat IRC: nexos

Re: Usecase idea.

Post by nexos »

eekee wrote:
nexos wrote:I'm thinking of a server with 100s of CPUs and a couple terabytes of RAM. It could even be a distributed system. It would be cheaper probably (less computers, just a few very pricy computers).
Okay. I know nothing about how such a system handles ram contention, so I'll leave it at that. It's funny you should mention distributed systems. Before the term was defined as narrowly as it is today, Plan 9 was called a distributed system. I realise now I've forgotten all about the details of distributed systems.
The answer to RAM contention is NUMA. NUMA allows each CPU to have its own private memory that it has fast access to. It can access other memory, but that is slower. An OS should be NUMA optimized so it can take advantage of the extra speed of NUMA systems.
"How did you do this?"
"It's very simple — you read the protocol and write the code." - Bill Joy
Projects: NexNix | libnex | nnpkg
Korona
Member
Member
Posts: 1000
Joined: Thu May 17, 2007 1:27 pm
Contact:

Re: Usecase idea.

Post by Korona »

NUMA systems do not bring extra speed, they just avoid extra slowdown.
managarm: Microkernel-based OS capable of running a Wayland desktop (Discord: https://discord.gg/7WB6Ur3). My OS-dev projects: [mlibc: Portable C library for managarm, qword, Linux, Sigma, ...] [LAI: AML interpreter] [xbstrap: Build system for OS distributions].
User avatar
pvc
Member
Member
Posts: 201
Joined: Mon Jan 15, 2018 2:27 pm

Re: Usecase idea.

Post by pvc »

Didn't we stray from original question a little bit too much?
Octocontrabass
Member
Member
Posts: 5568
Joined: Mon Mar 25, 2013 7:01 pm

Re: Usecase idea.

Post by Octocontrabass »

Korona wrote:NUMA systems do not bring extra speed, they just avoid extra slowdown.
...And that's only if you optimize them correctly. Linux, for example, performs notoriously poorly when a single program exhausts one CPU's available resources. Linux database configuration guides typically recommend disabling NUMA optimization.
pvc wrote:Didn't we stray from original question a little bit too much?
That depends on how many CPUs you need for all of your users. :wink:
User avatar
pvc
Member
Member
Posts: 201
Joined: Mon Jan 15, 2018 2:27 pm

Re: Usecase idea.

Post by pvc »

I was thinking about something like Threadripper class machines. 64 cores now, but maybe something like 256 or 1024 in about 5 years.
User avatar
eekee
Member
Member
Posts: 891
Joined: Mon May 22, 2017 5:56 am
Location: Kerbin
Discord: eekee
Contact:

Re: Usecase idea.

Post by eekee »

nexos wrote:The answer to RAM contention is NUMA. NUMA allows each CPU to have its own private memory that it has fast access to. It can access other memory, but that is slower. An OS should be NUMA optimized so it can take advantage of the extra speed of NUMA systems.
Thanks, that makes a lot of sense. (I remembered the term and should have looked it up.) It sounds like a NUMA system is somewhere between multiblade and original SMP; that's really cool. :)

@pvc: I was trying to question the performance of the original idea. My questions have now been answered to my satisfaction, so I look forward to seeing it develop. :)
Kaph — a modular OS intended to be easy and fun to administer and code for.
"May wisdom, fun, and the greater good shine forth in all your work." — Leo Brodie
Post Reply