Bilmek istediğin her şeye ulaş

Bir bilgisayarda belli sürede yapılan bir işlemi iki bilgisayarı kullanarak daha kısa sürede nasıl yapabiliriz? İki bilgisayar arasındaki paralelliği nasıl sağlayabiliriz? Bu paralellik sağlanırken nelere dikkat edilir?

Diske veri yazma işlemini düşünelim. Tek bilgisayardan 2 günde yazılacak veriyi iki veya daha fazla bilgisayar kullanarak nasıl 2 günden daha az bir sürede yazabiliriz? Bilgisayarlar arasındaki paralelliği nasıl sağlayabiliriz?Düzenle
Dağıtık sistemler kavramını araştırmanı öneririm. Dağıtık sistemlerde inanılmaz büyüklükteki veri bilgisayarlar arasında paylaşılarak işleniyor. Google mesela o kadar veriyi nasıl analiz ediyor? Bildiğim kadarıyla Google tarafından yazıldı ilk algoritmada, dağıtık sistemlerle ilgili. Bir de hadoop'u araştır bu da free bir uygulama konuyla ilgili.
  • Paylaş
Bu dediğiniz çok çekirdekli işlemciler kullanılarak zaten tek bir bilgisayarda yapılmaktadır. Bunun yanı sıra birden çok işlemciyi destekleyen anakartlar da vardır. Burada paralelliği anakart ve işlemcinin kendisi ayrıca yazılım sağlamaktadır. Öncelikle işlemi yapan yazılım çok çekirdeği desteklemelidir. Bunun etkilerini bir çok bitmap render programında gözlemleyebilirsiniz. Diske veri yazma işlemi ise diskin hızına bağlıdır. Bunu da bir harici diskten iki ayrı klasörü aynı anda sabit diskinize kopyalayarak gözlemleyebilirsiniz. Yazma işlemi oldukça yavaşlayacaktır. Bir server'da benzer mantıkla çalışır, bir çok bilgisayar server'a bağlanır ve server'daki dosyalar okunur ve yazılır. Herkes aynı anda dosyasını kaydederse sıkışıklık olur ve server dosyaları sırayla yazar. Bir de birden çok diske aynı anda yazmak da mümkündür ki bu da yazma hızını en az ikiye katlar, bu durumda da RAID özelliğini destekleyen bir anakart ve en az iki hard disk gerekmektedir. Ayrıca özellikle animasyoncuların kullandığı "render farm"lar vardır ki. O durumda render'ı alınacak film diyelim 5 dakika sürecek, 5x25x60 kareden oluşacaktır, bir karenin render'ı kalitesine de bağlı olarak 1 saat kadar sürecektir. Render süresini azaltmak için bu 7500 kare, 250'şer karelik parçalar halinde 30 bilgisayarda render'lanabilir ki işlem süresi 7500 saatten 250 saate düşer.
  • Paylaş
1

İsmet Acar, öncelikle teşekkürler.
Benim soruda sormak istediğim asıl konu donanımsal özellikleri bir nevi gözardı ederek iki bilgisayarı nasıl paralel çalıştırabilirim sorusu idi. verdiğim örnek konunun basit anlaşılması için basit bir örnekti. dediğiniz gibi bir animasyon filmi yapma işlemini düşünelim [render kısmını]. saniyede 25 frame olacak şekilde bir animasyon filmine resim modellenmek istense bir animasyon filmi de yaklaşık 1,5 saat olsa bir bilgisayar için frame başına düşen zaman çok olduğu için tam bir filmi yapmak oldukça fazla zaman alacaktır. Tek bir bilgisayar yerine birden fazla bilgisayar paralel kullanılarak bu zaman azaltılabilir. Bu paralelliği nasıl sağlayabiliriz bunu öğrenmek istiyorum.
Söylediğiniz RAID teknolojisine gelince RAID-0 ın çalışma prensibi gibi çalışacak bir paralellik kurmak istiyorum. İmkan olarak sadece elimde birden fazla bilgisayar var. donanımsal bir ekleme imkanı olmadığını düşünelim. Tekrar teşekkürler

Ne yapmaya çalıştığınızı anlamadım ama yapılması gereken işe bağlı olarak farklı modeller var bunun için. Grid computing'i internetten araştırabilirsiniz. Sadece gereken şey disk'e yazmak ise iki bilgisayara gerek olmadan RAID kullanabilirsiniz. Bir server yapısı varsa load balancing'e bakmanız faydalı olabilir.
  • Paylaş
1

İsmet Acar@vudu bu konuyla ilgili grid computing duymuştum. haklısınız soruda eksiklik olabilir. en basitinden farklı makinalar ortak işlem için (zaman açısından daha efektif) nasıl aynı anda kullanılabilir demek istemiştim aslında. grid computing aradığım cevapmış :)

Sonraki Soru
HESAP OLUŞTUR

İstatistikler

864 Görüntülenme8 Takipçi3 Yanıt

Eş Anlamlı Soru Ekle

  • Birden fazla bilgisayar kullanarak paralel işlemler nasıl gerçekleştirilir?