Topic: Blender Net-Rendering  (gelezen 7098 keer)


Offline blenderbrammetje

  • Member
  • *
  • Berichten: 1,420
    • Bekijk profiel
« Gepost op: 27 april 2013, 18:40:09 pm »
Hoi allemaal. Wie weet er de volgende vragen te beantwoorden. Ik zal zelf mijn best doen er enkele uit te zoeken via internet.


- Tot hoeveel processoren ondersteund Blender tegelijk, MP in ieder geval 2...
- Geld dat dan ook voor Blender Netrender...
- Is er een ideaal aantal cores dat het voordeligst is om met buckets te renderen (tiles)

Wat ik heb ontdekt via een aanvraag bij Maqina :

- Blender benut meerde CPU's of een CPU met veel cores efficienter als je twee Blenders tegelijk laat lopen renderen, vanwege de benutting van Idle-tijden door de andere Blender...maar niet als je al HyperThreading hebt op je processor, omdat die iets gelijkwaardigs doet, en dat conflicteerd met de manier waarop twee Blenders hun Idle-tijden een beetje opheffen.
« Laatst bewerkt op: 27 juli 2013, 22:03:39 pm door blenderbrammetje »

Offline Jogai

  • Member
  • *
  • Berichten: 238
    • Bekijk profiel
    • http://jogai.nl
« Reactie #1 Gepost op: 29 april 2013, 08:31:57 am »
Bij dit soort afwegingen is het belangrijk om diverse aspecten in de gaten te houden. Blender kan het renderen onderverdelen in tiles. Deze tiles kan hij parrallel renderen waardoor je dus meerder cores/processors efficienter gebruikt. Daarnaast doet blender ook nog andere dingen zoals compositing, en dit is (bijna) niet geparallelliseerd. Hier helpt het dus als een enkele core zo snel mogelijk is.

Aantal processoren;
Ik verwacht dat het renderen gewoon goed opschaalt naar meer processoren/cores.

Netrendering;
Als je een render slave hebt is dat eigenlijk een blender instantie. Performance van een slave is dus gelijk aan de performance van blender op diezelfde pc. Wel heb je iets overhead omdat er bestanden heen en weer moeten.

Aantal tiles;
Je vraag lijkt me precies andersom. Je stelt het aantal tiles in naar de hoeveelheid cores je hebt. Zo zorg je dat er nooit een core zonder werk zit. Stel je hebt 8 cores, en je renderd 1 frame in 4 tiles. 4 cores worden dan aan het werk gezet, en 4 doen er niets. Bij 8 tiles is dat al een stuk beter, maar stel dat je scene een hoop lucht bevat zijn er 4 cores heel snel klaar met de lucht en doen die weer niets omdat de andere 4 met een complexer stuk bezig zijn. Zo zie je dat complexere tiles de effectiviteit van een render tegenhouden. Als je meest complexe tile (relatief gezien) zo klein mogelijk is houd deze ook zo min mogelijk andere cores tegen.
Overigens met hyperthreading kun je zowieso je aantal tiles het best verdubbelen.

Nuttig leesvoer: http://www.blenderguru.com/13-ways-to-r ... der-times/

Het is dus erg afhankelijk van de scene die je aan het renderen bent. Ben je veel textures etc aan het laden van disk dan kan extra RAM/cache wel helpen. Als je veel compositing doet is het aantal GHz'en belangrijk. Voor echt ruwe rekenkracht is het aantal cores/processors juist weer belangrijk.

Bij een combinatie van deze factoren heb je er inderdaad baat bij om meerdere slaves per machine te starten. Dan kan 1 instantie bijvoorbeeld 1 core belasten omdat die met compositing bezig is terwijl de andere instantie alle cores gebruikt om iets anders te renderen. Met netrendering komt de (relatief langzame) netwerkcommunicatie daar nog bij.
Dit is overigens wel wat onduidelijker want het kan natuurlijk voorkomen dat beide instanties tegelijk met renderen bezig zijn waardoor iedere render gewoon 2 keer zo lang tijd vergt, en je effectief dus geen tijd wint.
« Laatst bewerkt op: 01 januari 1970, 01:00:00 am door Guest »

Offline blenderbrammetje

  • Member
  • *
  • Berichten: 1,420
    • Bekijk profiel
« Reactie #2 Gepost op: 11 juni 2013, 12:06:18 pm »
Ik renderde tot een jaartje geleden met Mental Ray.
Dan kon ik de tiles gewoon verdelen over meerdere computers. Kan dat met blender ook ?
Het probleem met iedere computer zijn eigen frames is nl. dat ik een
Core i5 650 met 8 gb DDR3 op 1333 wil laten samenwerken met een Phenom II 955@3.6Ghz met 4 gb geheugen...
De scene is bijna klaar en vraagt nu al meer dan 4,5 gb , dus dan zou ik hem wel tiles kunnen laten verdelen,
maar iedere bak zijn eigen frame gaat echt niet lukken....

We hebben al geprobeerd te netrenderen maar we konden de EXR files niet lezen, daarna bleken ze zwart te zijn....
Maar goed, heeft iemand hier meer ervaring mee.... ik hoor het graag !  :D
« Laatst bewerkt op: 01 januari 1970, 01:00:00 am door Guest »

Offline Mark aka Dark

  • *
  • Berichten: 785
    • Bekijk profiel
    • Mijn eigen site
« Reactie #3 Gepost op: 28 oktober 2013, 15:31:06 pm »
Heropend
« Laatst bewerkt op: 01 januari 1970, 01:00:00 am door Guest »
MAD staat voor: Mark Aka Dark
Problemen met inloggen? Mail naar: info@dbc-3d.nl

Offline blenderbrammetje

  • Member
  • *
  • Berichten: 1,420
    • Bekijk profiel
« Reactie #4 Gepost op: 07 november 2013, 00:15:18 am »
En Mark, hoe staat het ervoor met het online renderen met een netwerk....
Ik ga binnenkort zelf weer opnieuw een netwerkje starten, maar ben natuurlijk ook bereid om online mee te renderen....
BURP viel me een beetje tegen, was te traag en te veel fouten... Hinderlijke screensaver die met alles conflicteerde....

Ik had begrepen dat de zwarte (lege) exr bestanden veroorzaakt werden doordat we ze eerst extern weg moeten schrijven ?
We hebben toen ook geprobeerd om de scripts aan te passen voor JPEG ern BMP...
ga ik nu opnieuw proberen als ik mn nieuwe netwerkje heb lopen....
Wie weet daar het fijne van. Groetjes weer allemaal...
« Laatst bewerkt op: 01 januari 1970, 01:00:00 am door Guest »