plinq

    1熱度

    1回答

    我有以下代碼 var myResponse = new Response(); Parallel .ForEach(itemsListDto , new ParallelOptions { MaxDegreeOfParallelism = 10 } , itemDto => { var tResponse = _itemService

    3熱度

    1回答

    我想使用PLINQ在產品和類別之間執行內部連接。但我不確定是否應該爲這兩個集合調用AsParallel方法。 // PLINQ - Option 1 jointTables = from c in Homework02.categories.AsParallel() join p in Homework02.productList on c.Name equals p.Cat

    2熱度

    1回答

    我試圖使用PLINQ加快一個簡單的模擬,但我設法慢下來,而不是(未註釋進行AsParallel運行速度較慢): class Program { private static readonly Random Random = new Random(); private static IEnumerable<Tuple<double, double>> GetNextPair(

    3熱度

    2回答

    我有兩個包含相同類型對象的集合,兩個集合都有大約40K個對象。 每個集合包含對象的代碼基本上就像一本字典,除了我已經覆蓋了equals和散列函數: public class MyClass: IEquatable<MyClass> { public int ID { get; set; } public string Name { get; set; } publ

    4熱度

    1回答

    我正在使用PLINQ對數據進行並行操作。每個線程都會消耗大量的內存,這些內存是基於算法設置而變化的,所以根據算法選項預先計算需要多少內存並不容易。當內存要求較低時,最優的線程數爲8,系統總數爲8;當內存要求很高時,2個線程相對於1有顯着的改進,但是一旦使用了3個線程,系統就開始觸發分頁文件,並且CPU利用率下降到0,並且性能下降了數百倍。 我希望能夠做的是讓PLINQ增量線程數量,同時監視內存負載

    4熱度

    2回答

    我想用PLINQ方法AsParallel()重寫這個Parallel.For循環。據我所見,AsParallel()需要傳遞一個完整的序列,例如創建數組A,然後調用A.AsParallel()。ForAll或A.AsParallel()。Select。有沒有辦法讓AsParallel()在範圍內工作 - 在這種情況下,從低到高? for k = 2 to m+n do let low =

    0熱度

    1回答

    MSDN文章「Order Preservation in PLINQ」狀態: 以下示例通過使用 AsOrdered操作者在源序列覆蓋缺省行爲。這確保了 採取方法返回源 序列中的第10個城市符合條件 var orderedCities = (from city in cities.AsParallel().AsOrdered() where city.Population > 10

    2熱度

    1回答

    我有200,000個並行運行的任務可以提高速度。我正在使用ParallelEnumerable.Range(0, 200000).Sum(a => /*do_something*/)。 當任務計數器從0變到200,000時,所需的迭代次數減少。具有a=0的任務需要大量的迭代,而具有a>100,000的任務完成一次或不進行迭代。 由於這個原因,我的四核機器在任務進行時未達到最大cpu利用率峯值。看起

    3熱度

    1回答

    我對PLINQ有一些奇怪的結果,我似乎無法解釋。我一直在嘗試對Alpha Beta樹進行並行化搜索以加速搜索過程,但是它正在有效地減緩搜索速度。我期望提高並行度,我會每秒線性地增加節點數......並且在修剪被推出之前處理額外的節點。當節點數量相匹配的期望,我的時間不: 非PLINQ,參觀 節點:61418, 運行時間:0:00.67 並行度:1,參觀 節點:61418, 運行時:0:01.48

    5熱度

    2回答

    linq的好處之一是可以根據請求懶散處理無限的數據源。我試着對我的查詢進行並行處理,發現懶加載不起作用。例如... class Program { static void Main(string[] args) { var source = Generator(); var next = source.AsParallel().Select(i =>