Web Farm Framework + PLINQ - PullRequest
       4

Web Farm Framework + PLINQ

1 голос
/ 09 декабря 2011

У меня есть вопрос о платформе веб-фермы и PLINQ.

Как мы знаем, мы можем использовать расширение AsParallel в .NET 4.0 Framework.

Например,

    var source = Enumerable.Range(1, 10000);


// Opt-in to PLINQ with AsParallel
var evenNums = from num in source.AsParallel()
               where Compute(num) > 0
               select num;

Я знаю, что фреймворк веб-фермы будет выполнять для меня автоматическую балансировку нагрузки.

Предположим, у меня 3 сервера.

Сервер A: 8 ядер Сервер B: 4 ядра Сервер C: 4 ядра

Вопрос: сколько всего процессорных ядер я получу?Это 8 + 4 + 4 = 16 ядер?

Я спрашиваю, потому что мне интересно, сколько процессорных ядер доступно для параллельных вычислений.

Спасибо всем.

1 Ответ

0 голосов
/ 09 декабря 2011

Parallel LINQ использует доступные ядра только на том компьютере, на котором он работает .Я полагаю, что есть некоторые сторонние продукты (Microsoft Research имеет DryadLINQ ), которые могут распространить его на кластер, однако, из коробки это невозможно.

Кроме того, доступные ядра и используемые потоки - это две разные вещи (если не сказать больше, неуправляемые и управляемые потоки - это тоже две разные вещи).

Чтобы ответить на ваш вопрос, независимо от того, какой серверпри выполнении кода PLINQ может использовать 1 или более потоков (до предела, предоставляемого используемым планировщиком).Все зависит от рабочей нагрузки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...