Avidemux/Multithreading işlemci teknolojisi

Vikikitap, özgür kütüphane

Basit konuşmak gerekirse multithreading bilgisayarın herhangi bir işini birden fazla parçaya bölmesidir. Eğer bilgisayarınızın işlemcisinin birden fazla çekirdeği varsa (veya bilgisayarınızın birden fazla işlemcisi varsa) işler parçaya bölünüp paralel olarak işlenebilir, bu sayede işler daha kısa sürede sona erer.

Günümüzdeki bilgisayarların çoğu birden fazla çekirdeğe sahiptir. Avidemux, multithreading teknolojisini çeşitli derecelerde destekler.

Multithreading desteği[değiştir]

Avidemux'un bazı multithreading yetenekleri olmasına rağmen, Avidemux'un kendisi, grafik arabirim, betik motoru ve çeşitli packing & unpacking, muxing & demuxing programcıklarının multithreading destekleri yoktur. Ancak bu üzülünecek bir şey değildir. Avidemux'un kendisinin yaptığı iş çok küçüktür, Avidemux asıl işi çeşitli kodeklere yaptırır (örneğin libavcodec kodekleri, Xvid, ve x264). Kodlama işlemi birçok durumda toplam işlemin en az % 60'ı kadar işlemci harcar.

Bazı kodekler multithreading desteğine sahiptir. Aşağıdakiler, Avidemux'taki multithreading desteğine sahip kodeklerdir:

Kodlama

  • x264
  • libavcodec MPEG-1/MPEG-2
  • libavcodec MPEG-4
  • Xvid

Çözme

  • libavcodec MPEG-1/MPEG-2
  • libavcodec MPEG-4

Multithreading'i etkinleştirme[değiştir]

Multithreading desteği Avidemux'un sadece son sürümünde etkinleştirilebilir (>=2.2 veya SVN). Avidemux'un 2.2 sürümünü veya daha üstünü kurduktan sonra Avidemux'u başlatın. Sonra "Tools->Preferences" menü yolunu izleyin, açılan pencerede "MultiThread" sekmesinde programın kaç tane çekirdek/işlemci kullanacağını ayarlayabilirsiniz.

Olası değerler:

  • 0: Multithreading pasifleştirilir - CPU gücü ve zamanının yönetimi işletim sistemine bırakılır.
  • 1: 0 ile aynıdır.
  • 2: İki tane işlemcisi veya bir tane çift-çekirdekli işlemcisi olan bilgisayarlar içindir.
  • 3: Üç işlemcisi veya duble çift-çekirdekli işlemcisi olan bilgisayarlar içindir.
  • 4: Dört işlemcisi veya iki tane çift-çekirdekli işlemcisi veya bir tane dört-çekirdekli işlemcisi olan bilgisayarlar içindir.

Varsayılan durumda multithreading pasiftir (0'a ayarlıdır). Kullanıcılar multithreading'in kullanmak zorunda değildir ve multithreading istenilen zamanda kapatılıp açılabilir.

Performans üzerine[değiştir]

Avidemux, işlemciyi çok fazla sömürmez, yani Avidemux'la video kodlama/çözme yaparken sistemde ciddi bir yavaşlama hissetmemeniz gerekir. Bazı kodekler multithreading'i diğerlerinden daha iyi kullanır. Bu, tamamen kodeklerle ilgili bir konudur. Avidemux'la kodlama/çözme yaparken performansın düşük/yüksek olması Avidemux'la değil, kodekle ilgili bir konudur.

Kullanıcılar, çift çekirdekli işlemcili bilgisayarlarda multithreading desteğiyle Xvid'i kullanırken tek çekirdekli işlemle arasında bir fark olmadığını belirtmişlerdir. Yani Xvid multithreading'i destekler, ancak multithreading modunda hiçbir performans artışı sağlanmaz.

Ancak kullanıcılar x264'ü multithreading teknolojisi ile kullandıklarında ciddi performans artışı olduğunu bildirmişlerdir. Yani durum gösteriyor ki kodeklerin multithreading teknolojisiyle kullanımındaki performans kazancı değişebilmektedir. Kodeklerin multithreading modunda daha hızlı veya yavaş çalışması Avidemux'la değil, kodekin kendisiyle ilgilidir.

Neden sadece bazı kodeklerin multithreading desteği var?[değiştir]

Avidemux'un bünyesindeki kodeklerin hiçbiri Avidemux programcıları tarafından yazılmamıştır. Avidemux programcıları bu kodeklerin gelişimine katkıda bulunmamışlar ve kaynak kodunda hiçbir değişiklik yapmamışlardır.

Kodeklerin multithreading teknolojisi destekleri kodek geliştiricilerinin sorumluluğundadır. Multithreading desteği olan kodeklerin çoğunun multithreading destekleri Avidemux arayüzüyle açılıp kapanabilir.

Eğer herhangi bir kodekin multithreading desteği kazanmasını istiyorsanız ilgili isteğinizi, kodeki yazan kişi(ler)/şirket(ler) ile iletişime geçerek bildirebilirsiniz. Multithreading desteği kazanmış ama Avidemux'ta -henüz- multithreading desteği olmayan versiyonu kullanılan bir kodeke rastlarsanız lütfen bu durumu Avidemux topluluğuna bildirin. Avidemux topluluğuyla Avidemux forumu aracılıyla iletişim kurabilirsiniz.