标签: parallel-processing

如何在MATLAB中进行线程化?

如何在MATLAB中进行线程化?我想同时对两个变量运行一个函数.我该怎么做?

parallel-processing matlab multithreading function

4
推荐指数
1
解决办法
2万
查看次数

多线程Haskell

我正在学习Haskell,现在我想编写一些多线程程序,以便在功能语言中看到性能提升.我可以在互联网上找到它的一些参考但从来没有正确的介绍它.任何人都可以指向一个指南,这对于那些知道语法相当好的人来说是可以理解的,但在Haskell中不是一个向导吗?

parallel-processing multithreading haskell multicore

4
推荐指数
3
解决办法
2183
查看次数

C#中的每线程内存管理

继续从了解VS2010 C#并行性能分析结果的讨论,但更重要的是:

我有许多并行工作的线程(使用Parallel.For/Each),它们为小类使用许多内存分配.

这会在全局内存分配器线程上产生争用.

有没有办法指示.NET为每个线程预分配内存池并从该池中进行所有分配?

目前我的解决方案是我自己的内存池实现(全局分配的类型为T的对象数组,它们在线程中循环使用)这有很大帮助,但效率不高,因为:

  1. 我不能指示.NET从特定的内存片分配.
  2. 我仍然需要多次调用new来为池分配内存.

谢谢,
哈该

c# parallel-processing memory-management contention

4
推荐指数
1
解决办法
5276
查看次数

perl多任务问题

我已经完成了我之前使用perl线程的多线程程序,它可以在我的系统上运行.问题是,在某些需要运行的系统上,线程支持不会编译到perl中,我无法安装其他软件包.因此,我需要使用除线程之外的其他东西,并且我将我的代码移动到使用fork().这可以在我的Windows系统上启动子任务.

一些问题:

  1. 如何确定子进程何时退出?我在线程数低于某个值时创建了新线程,我需要跟踪正在运行的线程数.对于进程,如何知道何时退出,以便我可以跟踪当时有多少存在,在创建一个计数器时递增计数器,在一个计数器退出时递减计数器?

  2. 在子进程中由父进程打开时,是否使用OPEN获取的句柄的文件I/O?我需要为每个子进程附加一个文件,这在unix上也是安全的.

  3. fork和threads有什么替代方法吗?我尝试使用Parallel :: ForkManager,但是我的系统上没有安装(使用Parallel :: ForkManager;出错)我绝对要求我的perl脚本可以在所有unix/windows系统上运行而无需安装任何其他模块.

parallel-processing perl multithreading multitasking

4
推荐指数
1
解决办法
2753
查看次数

调用并行化foreach的问题

我在使用System.Threading.Tasks.Parallel.ForEach时遇到问题.身体foreach progressBar想要更新.但Invoke方法有时会冻结.

我将代码附加到prograssbar和Buton的表单中.

private void button1_Click(object sender, EventArgs e)
{
    DateTime start = DateTime.Now;
    pforeach();
    Text = (DateTime.Now - start).ToString();
}


private void pforeach()
{
    int[] intArray = new int[60];
    int totalcount = intArray.Length;
    object lck = new object();
    System.Threading.Tasks.Parallel.ForEach<int, int>(intArray,
    () => 0,
    (x, loop, count) =>
    {
        int value = 0;
        System.Threading.Thread.Sleep(100);
        count++;
        value = (int)(100f / (float)totalcount * (float)count);

        Set(value);
        return count;
    },
    (x) =>
    {

    });
}

private void Set(int i)
{
    if (this.InvokeRequired)
    {
        var …
Run Code Online (Sandbox Code Playgroud)

c# parallel-processing

4
推荐指数
1
解决办法
2645
查看次数

mapreduce中的manupulating迭代器

我试图使用hadoop找到任何给定点的总和,我遇到的问题是从单个reducer中获取给定键的所有值.看起来像这样.

减速器:

 public static class Reduce extends MapReduceBase implements
        Reducer<Text, IntWritable, Text, DoubleWritable> {

    public void reduce(Text key, Iterator<IntWritable> values,
            OutputCollector<Text, DoubleWritable> output, Reporter reporter)
            throws IOException {
        Text word = new Text();

        Iterator<IntWritable> tr = values;
        IntWritable v;
        while (tr.hasNext()) {
             v = tr.next();

            Iterator<IntWritable> td = values;
            while (td.hasNext()) {

                IntWritable u = td.next();
                double sum = u+v;
                word.set( u + " + " + v);
                output.collect(word, new DoubleWritable(sum));
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我试图创建Iterator变量的两个副本,以便我可以通过第二个迭代器的所有值,而我从前一个迭代器获取单个值(两个while循环),但两个迭代器保持相同的值所有时间.

我不确定这是否是正确的方法,任何帮助都非常感谢.

谢谢,

Tsegay

parallel-processing hadoop mapreduce

4
推荐指数
2
解决办法
1万
查看次数

4
推荐指数
1
解决办法
5015
查看次数

什么是推荐的大数据处理C++并行化库

有些人可以推荐在C++中进行并行化的方法,当要执行的数据非常庞大时.我一直在阅读有关openMP和英特尔TBB在C++中进行并行化的内容,但尚未对它们进行过实验.哪些对并行数据处理更好?还有其他图书馆/方法吗?

c++ parallel-processing tbb openmp dataset

4
推荐指数
2
解决办法
931
查看次数

Erlang - 并行消息没有正确搜索

我有一个小问题,我找不到简单的答案.

我设置:

Who = apple.

Message = [{apple, {0,0,0}}, {orange, {1,1,1}}].

Old = [X || {Who, X} <- Message].

Old returns as [{0,0,0},{1,1,1}]
Run Code Online (Sandbox Code Playgroud)

当然我的预期回复是{0,0,0}

相反,我得到了苹果和橘子.

我能做什么??

parallel-processing erlang

4
推荐指数
1
解决办法
122
查看次数

种族和死锁之间的区别

在并发编程中,种族死锁之间的差异和共同点(如果有的话)是什么?一个详细的答案将不胜感激;).

parallel-processing concurrency

4
推荐指数
1
解决办法
3402
查看次数