«parallel-processing» etiketlenmiş sorular

Paralel işleme, sadece Eşzamanlı işlemenin tam tersine, paralel bir şekilde yürütülen tüm iş parçacığı düzeyinde ve / veya talimat düzeyinde görevlerin başlatılması / gerçekleştirilmesi / bitirilmesi garantilidir ve eşzamanlı olarak yürütülen kod yollarının garantili bir sonunu sağlar.

13
Eşzamansız ve paralel programlama arasındaki fark nasıl ifade edilir?
Birçok platform, yanıt verme yeteneğini geliştirmek için eşzamansızlığı ve paralelliği teşvik eder. Farkı genel olarak anlıyorum, ancak kendi zihnimde ve başkaları için açıkça ifade etmekte zorlanıyorum. Ben bir geçici programcıyım ve async ve geri çağrıları oldukça sık kullanıyorum. Paralellik egzotiktir. Ancak özellikle dil tasarımı düzeyinde kolayca sınırlandırıldığını hissediyorum. İlişkilerinin (veya …

5
Birden çok beklemeden ziyade neden tek 'await Task.WhenAll' tercih etmeliyim?
Görevin tamamlanma sırasını önemsemiyorsam ve sadece tamamının tamamlanmasına ihtiyacım olursa await Task.WhenAll, çoklu yerine yine de kullanmalı awaitmıyım? örneğin, DoWork2aşağıdaki DoWork1(ve neden?) using System; using System.Threading.Tasks; namespace ConsoleApp { class Program { static async Task<string> DoTaskAsync(string name, int timeout) { var start = DateTime.Now; Console.WriteLine("Enter {0}, {1}", name, timeout); await …

8
Powershell Komutları Paralel Olarak Çalıştırabilir mi?
Bir grup görüntü üzerinde toplu işlem yapmak için bir powershell betiğim var ve bazı paralel işlemler yapmak istiyorum. Powershell, başlangıç ​​işi, iş bekle, vb. Gibi bazı arka plan işleme seçeneklerine sahip gibi görünüyor, ancak paralel çalışma yapmak için bulduğum tek iyi kaynak bir komut dosyasının metnini yazmak ve bunları çalıştırmaktı …

4
Çoklu işlemede paylaşılan bellek nesneleri
Büyük bir bellek dizilimine sahip olduğumu varsayalım func, bu dev diziyi girdi olarak alan bir işleve sahibim (diğer bazı parametrelerle birlikte). funcfarklı parametrelerle paralel olarak çalıştırılabilir. Örneğin: def func(arr, param): # do stuff to arr, param # build array arr pool = Pool(processes = 6) results = [pool.apply_async(func, [arr, param]) …

1
Haskell iş parçacıkları yalnızca 22Mb toplam bellek kullanımına rağmen yığın taşıyor mu?
Bir ışın izleyiciyi paralelleştirmeye çalışıyorum. Bu, çok uzun bir küçük hesaplama listesine sahip olduğum anlamına geliyor. Vanilya programı belirli bir sahnede 67,98 saniye ve 13 MB toplam bellek kullanımı ve% 99,2 verimlilikle çalışır. İlk denememde parBufferarabellek boyutu 50 olan paralel stratejiyi kullandım. parBufferListede yalnızca kıvılcımlar tüketildiği kadar hızlı yürüdüğü ve …

5
Paralel.foreach?
Bir parallel.for döngüsünden nasıl çıkabilirim? Aşağıdakine benzeyen oldukça karmaşık bir ifadem var: Parallel.ForEach<ColorIndexHolder>(ColorIndex.AsEnumerable(), new Action<ColorIndexHolder>((ColorIndexHolder Element) => { if (Element.StartIndex <= I && Element.StartIndex + Element.Length >= I) { Found = true; break; } })); Paralel sınıf kullanarak bu süreci açık ara optimize edebilirim. Ancak; Paralel döngüyü nasıl kıracağımı çözemiyorum? …

7
Kilit ifadesi ne kadar pahalı?
Çoklu iş parçacığı ve paralel işleme ile deneyler yapıyordum ve işlem hızının bazı temel sayım ve istatistik analizlerini yapmak için bir sayaca ihtiyacım vardı. Sınıfımın eşzamanlı kullanımıyla ilgili sorunları önlemek için sınıfımdaki özel bir değişken üzerinde bir kilit ifadesi kullandım: private object mutex = new object(); public void Count(int amount) …

4
MapReduce sıralama algoritması nasıl çalışır?
MapReduce'un gücünü göstermede kullanılan ana örneklerden biri Terasort karşılaştırmasıdır . MapReduce ortamında kullanılan sıralama algoritmasının temellerini anlamakta güçlük çekiyorum. Bana göre sıralama, basitçe bir öğenin diğer tüm öğelerle olan göreceli konumunu belirlemeyi içerir. Yani sıralama, "her şeyi" "her şey" ile karşılaştırmayı içerir. Ortalama sıralama algoritmanız (hızlı, kabarcık, ...) bunu basitçe …

5
Python'da alt işlem, çoklu işlem ve iş parçacığı arasında karar vermek?
Python programımı, üzerinde çalıştığı makinede birden çok işlemciyi kullanabilmesi için paralel hale getirmek istiyorum. Paralelleştirmem çok basittir, çünkü programın tüm paralel "dizileri" bağımsızdır ve çıktılarını ayrı dosyalara yazar. Bilgi alışverişi için iş parçacığına ihtiyacım yok, ancak iş parçacıklarının ne zaman bittiğini bilmem zorunludur çünkü ardışık düzenimin bazı adımları çıktılarına bağlı. …



2
Bir sonuç kuyruğunu birkaç işlem arasında paylaşma
multiprocessingModül belgeleri, bir kuyruğun başlatılan bir işleme nasıl geçirileceğini gösterir multiprocessing.Process. Ancak bir kuyruğu, başlatılan zaman uyumsuz çalışan işlemlerle nasıl paylaşabilirim apply_async? Dinamik birleşmeye veya başka bir şeye ihtiyacım yok, sadece çalışanların sonuçlarını (tekrar tekrar) üsse geri bildirmeleri için bir yol. import multiprocessing def worker(name, que): que.put("%d is done" % …

2
SLURM "srun" - "sbatch" ve parametreleri
SLURM'ler srunile sbatchkomutlar arasındaki farkın ne olduğunu anlamaya çalışıyorum . Aşağıdaki sorulara özel cevaplar yerine genel bir açıklamadan memnun olacağım, ancak burada bir başlangıç ​​noktası olabilecek ve aradığım şey hakkında bir fikir verebilecek bazı belirli kafa karışıklıkları var. Belgelere göre , sruniş sbatchgöndermek içindir ve daha sonra icra edilmek üzere …


2
Repa dizilerinde paralel mapM
Benim son olarak çalışması ile Gibbs sampling, ben iyi şekilde yararlanmayı sağlayan oldum RVarbana göre, rasgele sayı üretimi için ideale yakın arayüz sağlar. Maalesef haritalarda monadik eylemleri kullanamadığım için Repa'yı kullanamadım. Açıkça monadik haritalar genel olarak paralelleştirilemezken, bana öyle geliyor ki bu RVar, etkilerin güvenli bir şekilde paralelleştirilebileceği bir monad …

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.