SORU
26 EKİM 2013, CUMARTESİ


Nasıl &; kazanmak" ve &bellek siparişlerini farklı ve " zaman "tüketmek"; tüketmek" tercih" mi?

C 11 standart içeren bir bellek modeli (1.7, 1.10) tanımlarbellek sıralamalarkabaca, "sırayla tutarlı", "", "", "" ve "". rahat bırakın tüketmek elde Eşit kabaca, bir program varsa Eğer tüm eylemleri bir düzen içinde koymak olabilir olur yarış-ücretsiz, eğer sadece doğru bir eylemolur öncebir tane daha. Bir eylem biçimiX olur öncebir eylemYbunu daXönce sıralıY(bir iş parçacığı içinde), ya daX arası-olur-önce iplik Y. İkinci koşul, diğerleri arasında, ne zaman verilir

  • XeşitlerYya
  • X-sipariş bağımlılık önceY.

Senkronizasyon-birlikteolurX""bazı atomik değişken sipariş ve . sürümü ile bir atom deposu ^em>Y"almak" aynı değişken üzerinde sipariş. atom bir yük. Olmakbağımlılık-sipariş-öncebenzer durum olduğu için olurY""(ve uygun bir bellek erişimi) sipariş. tüketmek yük. Kavramıeşitlergenişletirolur önceeylemler olmak arasında ilişki geçişlisıralı-öncebir iş parçacığı içinde bir başka amabağımlılık-sipariş-öncevardır kesin bir alt kümesi yalnızca geçişli genişletilmişsıralı-öncearadıtaşıyan-bağımlılıkkurallar büyücek bir dizi izler, ve özellikle de std::kill_dependency ile kesintiye uğramış olabilir.,

Kavramı, amacı ne şimdi o zaman,""? bağımlılık sipariş Avantajı basit üzerinden verirsıralı-önce/eşitlersipariş? Bunun için kurallar daha katı olduğundan, daha verimli bir şekilde uygulanabilir sanırım.

Serbest geçiş için bir programı bir örnek ver/tüketmek de doğru/serbest bırakmak için almak ve önemsiz olmayan bir avantaj sağlar mısın? Ve ne zaman std::kill_dependency bir iyileşme sağlayabilir mi? Üst düzey bağımsız değişkenleri iyi olurdu, ama bonus donanım-belirli farklılıklar gösteriyor.

CEVAP
31 EKİM 2013, PERŞEMBE


Veri sipariş bağımlılık aşağıdaki gerekçe ile N2492 tarafından tanıtıldı:

Geçerli çalışma taslağı (N2461) bazı mevcut donanım üzerinde bu mümkün yakın ölçülebilirlik desteklemiyor iki önemli kullanım örnekleri var.

  • nadiren yazılı eşzamanlı veri yapıları için okuma erişimi

Nadiren yazılı eşzamanlı veri yapıları oldukça yaygın, her iki server tarzı Uygulamalar işletim sistemi çekirdekleri ve. Örnekler veri yapıları temsil eden dışında devlet (gibi yönlendirme tabloları), yazılım yapılandırma (modüller yüklü), donanım yapılandırma (depolama aygıtı kullanımda) ve güvenlik politikaları erişim kontrol izinleri, güvenlik duvarı kuralları). -Okuma-yazma oranları iyi bir milyardan fazla oldukça yaygındır.

  • yayımlamak-abone işaretçi aracılı yayın için semantik

İş parçacıkları arasında iletişim çok hangi yapımcı, hangi ile tüketici bilgilere erişebilir bir işaretçi işaretçi yayınlar aracılı. Bu verilere erişmeye tam elde semantik olmadan mümkün değildir.

Bu gibi durumlarda,inter-iplik veri-bağımlılık sipariş-sipariş büyüklüğü speedups sonuçlandıve inter-iplik veri bağımlılığı destekleyen makinelerde ölçülebilirlik benzer geliştirmeleri sipariş. Böyle speedups gibi makineler aksi takdirde gerekli olan pahalı kilit alımları, atom talimatları, ya da bellek çitler kaçının çünkü bu mümkündür.

vurgu benim

motive kullanma durumu var sunulan Linux çekirdeği rcu_dereference()

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Philip DeFranco

    Philip DeFra

    16 EYLÜL 2006
  • Sergio Fernandez

    Sergio Ferna

    1 EKİM 2009
  • The CGBros

    The CGBros

    20 AĞUSTOS 2011