Redian新闻
>
.net 4.0 parallel computing 的意义
avatar
.net 4.0 parallel computing 的意义# DotNet - 窗口里的风景
B*M
1
【 以下文字转载自 board 讨论区 】
发信人: lezizi (乐滋滋), 信区: board
标 题: 申请WebRadio未名网络电台版三
发信站: BBS 未名空间站 (Fri May 23 10:53:07 2008), 转信
宝妈最近有点儿忙,帮忙打理一下版面。
请站长批准 谢谢~~
avatar
w*y
2
當——當——當——
牆上的鐘敲三下。
不斷重復著的敲門聲一停,四周猛地靜下來,除外面淅淅瀝瀝的雨聲。忍不住抬頭又
朝铘看一眼,他依舊不動聲色望著窗外,看著那些搖搖晃晃在家門外的身影。
那些看上去像人,但並不是人的東西。
突然一聲悶響。
不知為什麼離窗最近的那個東西幾步朝窗撲過來,在驚跳著後退的同時下把頭撞在面
前那道窗玻璃上!那瞬間以為玻璃要被砸碎,所幸除震落幾張符,窗玻璃還是好好的。只
是被那東西嘴裡噴出的東西凝上層霧氣,霧氣是淡黃色的,隔著層玻璃都能聞到的酸腐味

「魃。」手從嘴上收回去,似乎低低說聲什麼,而這時身後突然嚓一聲響,有什麼
東西在黑暗裡爆裂……
爆裂聲不大,可沒等回頭去看,原本正從窗口離開的那個東西腳步一下子就停,片刻
摸索著牆壁慢慢倒退回來,雙灰白色瞳孔貼著窗玻璃朝裡張望著,同幾乎臉貼臉的距離。
然後伸手在窗上拍了拍。
…………
每下震得窗栓地抖,而它身後原本靜站著不動的那些東西也像是嗅著什麼味道似
的,個個慢慢低下頭,循著聲音朝它裡逐漸圍攏過來。
「……」
扯住铘的手試圖拉著他朝後退,可他卻
avatar
d*n
3
随便尝试了几个例子,parallel computing 一跑起来所有cpu core 全是100% usage,
这样一来其它程序不用跑了,谁敢把这样的程序放到production的服务器上去?
微软那帮人到底是怎么想的?
avatar
B*M
4
请大家到board支持乐子同学。。。
xiexie~~

【在 B*M 的大作中提到】
: 【 以下文字转载自 board 讨论区 】
: 发信人: lezizi (乐滋滋), 信区: board
: 标 题: 申请WebRadio未名网络电台版三
: 发信站: BBS 未名空间站 (Fri May 23 10:53:07 2008), 转信
: 宝妈最近有点儿忙,帮忙打理一下版面。
: 请站长批准 谢谢~~

avatar
c*t
5
贴个例子上来看看

【在 d*****n 的大作中提到】
: 随便尝试了几个例子,parallel computing 一跑起来所有cpu core 全是100% usage,
: 这样一来其它程序不用跑了,谁敢把这样的程序放到production的服务器上去?
: 微软那帮人到底是怎么想的?

avatar
H*g
6
我咋觉得是你自己弄明白他的意义啊。。。
无语。

【在 d*****n 的大作中提到】
: 随便尝试了几个例子,parallel computing 一跑起来所有cpu core 全是100% usage,
: 这样一来其它程序不用跑了,谁敢把这样的程序放到production的服务器上去?
: 微软那帮人到底是怎么想的?

avatar
d*n
7
有什么高见说出来嘛,干嘛一副惜字如金的样子。

【在 H*******g 的大作中提到】
: 我咋觉得是你自己弄明白他的意义啊。。。
: 无语。

avatar
d*n
8
微软自己的网站或者codeproject上都是这样。

【在 c**t 的大作中提到】
: 贴个例子上来看看
avatar
k*n
9
用p不就是为了尽量用cpu吗?
那些例子估计如果不用parallel computing,
cpu useage是多少?
在单cpu与多核cpu上有啥不同?
avatar
d*n
10
难道parallel computing 的前提是dedicated服务器? 如果服务器是与其它应用共享,
100%cpu使用率别人还不疯掉了。
我在2,4,6核的机器上都试过,全是100%, 而且无法调整。
msdn上说parallel computing是代替thread pool的。如此表现我们就是有100个胆也不
敢用啊。还是thread poolx先混着吧。

【在 k**n 的大作中提到】
: 用p不就是为了尽量用cpu吗?
: 那些例子估计如果不用parallel computing,
: cpu useage是多少?
: 在单cpu与多核cpu上有啥不同?

avatar
S*k
11
One of my project uses parallel in production. I have not noticed such issue
yet.
Could you give a specific sample?
avatar
x*n
12
Our projects (healthcare industry) use parallel computer of .net 4 without
any issue. Your problem is that you need new hardware/scale out or revise
your algorithm.
avatar
d*n
13
thanks for reply.
If it works for you, then there must be some disconnection somewhere between
you and me.
I attached the sample below and did the test just now on a 6 core, 8 gb
machine, it just reconfirmed my previous observation: all cpu runs at 100%
while the program is running.
Can you try on your server and see if you run into the same thing?
Thanks!
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Threading;
using System.Diagnostics;
namespace ParaComputing
{
class Program
{
static void Main(string[] args)
{
var watch = Stopwatch.StartNew();
//for (int i = 2; i < 20; i++)
//{
// var result = SumRootN(i);
// Console.WriteLine("root {0} : {1} ", i, result);
//}
Parallel.For(2,1000, (i)=>
{
var result = SumRootN(i);
Console.WriteLine("root {0} : {1} ", i, result);
});
Console.WriteLine(watch.ElapsedMilliseconds);
Console.ReadLine();
}
public static double SumRootN(int root)
{
double result = 0;
for (int i = 1; i < 10000000; i++)
{
result += Math.Exp(Math.Log(i) / root);
}
return result;
}
}
}

issue

【在 S***k 的大作中提到】
: One of my project uses parallel in production. I have not noticed such issue
: yet.
: Could you give a specific sample?

avatar
d*n
14
thanks for your reply, the hardware I used to test is already decent 6 cores
with 8 gb of memory. I also attached a example I used to test .net 4.0
parallel computing in a previous post under this thread, can u check if it
happens to you too?
thx.

【在 x**n 的大作中提到】
: Our projects (healthcare industry) use parallel computer of .net 4 without
: any issue. Your problem is that you need new hardware/scale out or revise
: your algorithm.

avatar
S*k
15
Try to use parallelOption
var options = new ParallelOptions {
MaxDegreeOfParallelism = 2 // set it to half of num of cores.
};
Parallel.For(2, 1000, options, (i) => {
var result = SumRootN(i);
Console.WriteLine("root {0} : {1} ", i, result);
});

between

【在 d*****n 的大作中提到】
: thanks for your reply, the hardware I used to test is already decent 6 cores
: with 8 gb of memory. I also attached a example I used to test .net 4.0
: parallel computing in a previous post under this thread, can u check if it
: happens to you too?
: thx.

avatar
d*n
16
wow, awesome, i bet it will address the issue, i will try and get back to u.

【在 S***k 的大作中提到】
: Try to use parallelOption
: var options = new ParallelOptions {
: MaxDegreeOfParallelism = 2 // set it to half of num of cores.
: };
: Parallel.For(2, 1000, options, (i) => {
: var result = SumRootN(i);
: Console.WriteLine("root {0} : {1} ", i, result);
: });
:
: between

avatar
d*n
17
Spark, you are absolutely right.
When I set the option's value as below, the cpu usage now hover on 50%
constantly and that is exactly the control i am looking for.
MaxDegreeOfParallelism = Environment.ProcessorCount/2
Thanks man!

【在 S***k 的大作中提到】
: Try to use parallelOption
: var options = new ParallelOptions {
: MaxDegreeOfParallelism = 2 // set it to half of num of cores.
: };
: Parallel.For(2, 1000, options, (i) => {
: var result = SumRootN(i);
: Console.WriteLine("root {0} : {1} ", i, result);
: });
:
: between

相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。