Toon posts:

Op een gameserver 2 CPU's verdelen. Hoe?!

Pagina: 1
Acties:

Verwijderd

Topicstarter
Een vraag. Wij hebben een server met 2 CPU's er inhangen... Nu draaien we BattleField en CounterStrike. Die gebruiken nu beiden 1 CPU met een 80 (BF) / 20 (CS) verhouding...

Wij draaien linux. Is het op 1 of andere manier mogelijk CS van de ene CPU gebruik te laten maken en BF van de andere?! We ondervinden namelijk zo nu en dan bij een wat vollere bezetting problemen kwa lag.

  • dion_b
  • Registratie: September 2000
  • Laatst online: 02:47

dion_b

Moderator Harde Waren

say Baah

Hmm, dit is heeft echt meer met OS dan hardware te maken.

Move PMG->NOS


(tip: post er snel meer info over de gebruikte distro e.d. bij, wil in NOS wel helpen :) )

Oslik blyat! Oslik!


  • Kippenijzer
  • Registratie: Juni 2001
  • Laatst online: 28-04 20:21

Kippenijzer

McFallafel, nu met paardevlees

Er bestaan hier speciale kernelpatches voor, maar vooral op productie servers moet je dan erg goed weten waar je mee bezig bent, maar daarmee kun je, net als met unix os'en affiniteit voor een bepaalde CPU toekennen wat je dus idd wilt... Weet verder zo effe niet meer welke, en effe geen tijd om te zoeken, heb wat haast, maar heb mezelf hier een jaar of wat terug in verdipet en er zijn dus wel mogelijkheden voor...

  • odysseus
  • Registratie: Augustus 2000
  • Laatst online: 00:21

odysseus

Debian GNU/Linux Sid

Dit zou standaard al ongeveer moeten gebeuren als je een SMP-kernel gebruikt. Je krijgt dan zeg maar BF die 40% van een proc gebruikt en CS die 60% van de ene en 100% van de andere gebruikt. Daar hoef je zelf niet echt iets voor te doen, het installeren van die kernel (en het gebruik van min-of-meer threaded applicaties) is al genoeg. Als je het echt volledig gescheiden wilt hebben, dus CS op een proc en BF op een andere, dan moet je eens kijken naar patches voor "CPU affinity", daarmee kun je denk ik realiseren wat je wilt. Het is alleen vrij nutteloos, je kunt beter de kernel zelf de load laten verdelen over twee processors :).

Leven is het meervoud van lef | In order to make an apple pie from scratch, you must first create the universe.


Verwijderd

Het hoeft niet nutteloos te zijn, anders zou er geen patch voor zijn. In de wat grotere systemen (als in > 8 way machines) is het vrij normaal dat je een applicatie op een groep cpu's kan laten draaien. (eg (als voorbeeld een 32way box), oracle op de eerste 20 cpu's, en een andere app op de andere 10, en reserveer de andere 2 cpu's in failover configuratie voor het OS).

De voornaamste reden dat dit soort dingen er zijn, is om fine-grained performance tuning te doen, alleen dan komt er nog wel wat meer bij kijken dan alleen maar "wat load" (dan komt uitgebreid resource mgmt om de hoek kijken) ;) Voor jouw probleem is dit een stuk minder van toepassing (immers, de kernel zal een stuk meer verstand van resource mgmt snappen dan dat jij doet) dus of het toepassen van de cpu-affinity patch in jouw geval zin zal hebben is de vraag ...

[ Voor 38% gewijzigd door Verwijderd op 20-06-2003 14:39 ]


  • bolluserectus
  • Registratie: November 2001
  • Laatst online: 22-04 20:05
Ik beheer 2 dual 2400MP bakken en draai per bak 15 CS servers..
Ik heb heel weinig geconfigged hiervoor, alleen een standaard SMP kernel inderdaad.
Als er niemand op de servers zit, zie je weinig load..
Zit er 1 of 2 servers vol, zie je dat die behoorlijke load veroorzaken.
Als je dat zou zien zou je denken, er moet niet veel meer bijkomen..
Maar 's avonds rond een uur of 9 a 10 als praktisch alle servers volzitten, wordt toch alles netjes verdeeld en is er niks aan de hand..

Weet je zeker dat je cpu wel de bottleneck is voor je lag..?
Ligt het niet aan de lijn, of aan een trage HD (hdparm vergeten maybe..??)

Actions speak louder than words


  • Kippenijzer
  • Registratie: Juni 2001
  • Laatst online: 28-04 20:21

Kippenijzer

McFallafel, nu met paardevlees

Op zich is de BF server een meest inefficiente server, en JUIST het probleem dat er zo weinig servers op draaien zorgen voor enige lag. Linux probeert nl. processen netjes over de CPU's te verdelen, maar jah, geen van beide is echt SMP geschikt. Gevolg, de processen worden continu van cpu 1 naar cpu 2 verplaatst en weer terug. Hiervoor in het uitermate nuttig om de processen vast te leggen aan een cpu, om niet steeds die overhead van het verplaatsen tussen cpu's te hebben. Zelf merk ik het ook, Dual p3-1ghz waarop op het moment niet zoveel draait en bf blijft cpu-hoppen... Maar ik durf er nog nniet aan, naast het feit dat die bf puur een test was en voor mij geen vaste server...

  • bolluserectus
  • Registratie: November 2001
  • Laatst online: 22-04 20:05
Het zou op applicatienivo te specificeren moeten zijn en niet op kernel nivo..
Kan je toch lekker op je productieserver kloten.. :)

Actions speak louder than words


Verwijderd

Topicstarter
Ik heb eea iig vast doorgegeven aan de kenners binnen onze crew...Zij zullen ongetwijfeld met meer vragen zitten, maar die zien jullie wel verschijnen dan... Iig hartelijk bedankt zover....
Pagina: 1