Projects tagged ‘concurrent’ and ‘parallel’


Jump to tag:

Projects tagged ‘concurrent’ and ‘parallel’

Filtered by Project Tags concurrent parallel

Refine results Project Tags java (6) distributed (5) c (3) networking (3) thread (2) .net (2) object (2) csharp (2) middleware (2) threads (2) actor (2) framework (2)

[16 total ]

5 Users
   

ProActive is the Java GRID middleware library (with Open Source code under GPL license) for parallel, distributed and multi-threaded computing. ProActive is the GRID Application Server for the ... [More] Enterprise. With a reduced set of simple primitives, ProActive provides a comprehensive API to simplify the programming of Grid Computing applications: distributed on Local Area Network (LAN), on clusters of workstations, or on Internet GRIDs. ProActive is only made of standard Java classes, and requires no changes to the Java Virtual Machine, no preprocessing or compiler modification, leaving programmers to write standard Java code. [Less]
Created over 3 years ago.

1 Users
 

The project Mandala helps the development of concurrent and/or distributed applications. It is based on the asynchronous reference concept which provide asynchronous and potentially remote method invocation.
Created about 1 year ago.

1 Users

C Application Framework. A parallel and distributed server/application development framework for C, POSIX, SUSv2/3 and other standards. NOTE: The project isn't finished yet, but I'm doing my best ... [More] effort to implement the proper and faster algorithms. [Less]
Created 11 months ago.

1 Users

What is KorusGetting StartedBackgroundTechnical OverviewWhat can I do with KorusGuidelines and Best PracticesPerformance BenchmarksCommercial UsageShort Term RoadmapContributing To KorusAbout UsWhat ... [More] is KorusKorus is a parallel and distributed programming framework written in core Java. Traditionally such frameworks/platforms are heavy as well as complex in nature. When we started with the concept, one of the things we wanted to have was a very light weight, programmer intuitive and simple model. We also wanted to make sure to have a extremely scalable and very high performance framework in place. Thus we started with this project with an aim to have the best of the simple core Java world and the best of the "conceptual models" in the programming world of Erlang/Haskel/Scala. For more details of the background of Korus please see here. Korus is currently version 1.0.0 Korus is very simple to use , very simple to deploy (one single jar file), and very simple to understand. No need to understand thread programming to use Korus. Korus provides thread-less concurrency by way of code-context-switching. Programmers only write Java functions. In one line Korus is a set of functions calling each other asynchronously and passing messages to each other. Simply break up your problem in a set of functions and code it to the Korus specifications. In the world of Korus these functions are called as "Korus-processes" or simply "processes". One Korus process is one Java function in terms of coding. Korus process is nothing to do with operating system process. They are simply Java functions, but since they behave independent of each other we decided to call them "processes". In all the documentation for Korus, wherever you see the term process, it means a Korus process. Korus is based on Actor Design Pattern. One of first “pure” actor pattern frameworks in Java. For more details of Actor pattern see here. Features Korus basically has two broad category of features. The core set of features which include developing application using Korus processes. Korus-Addons,these include Parallel constructs like parallel_for loop, pipeline etc. Connectivity to Korus from other programming languages. Getting StartedThe best way to start is by having a look at the Getting started page. if you want to have a very quick feel go to the Getting Started Quickly section in guide. It will take only 5 minutes to run the sample program if you have a JDK environment. You can also download the Korus binaries from the download section. It consists of sample programs, Java docs and korus.jar file BackgroundWhile we were debating on the best way to approach this, we realized we already had knowledge of such a "conceptual model". We have been working quite a lot on various upcoming and non traditional programming languages who have their core designed in a way which makes them good candidate for parallel/distributed computing. e.g. Erlang, Scala, Haskel etc. One of the fundamental problems with these languages is that they are very difficult to program and extremely complex in nature. Another major hurdle is the industry acceptability to use these. Though there has been an increase in usage lately, but the overall percentage is very less. Lastly it is very difficult to find expertise in these language, hence a significant barrier to entry. One of the biggest challenges the industry is facing today is achieving Performance, Scalability and Availability. We need to get optimal returns from the hardware we invest in. We need ways to effectively utilize and take advantage of the commodity and multicore available to us. We need a software stack which can make life easier too develop as well as to deploy and run in production. The journey of Korus starts with this background. Technical OverviewFor more details have a look here What can I do with KorusSimply putting it, Korus is very useful if you are planning to write applications which need very high performance & scalability. The application can either be stand alone or distributed or parallel in nature. Additionally, you can use the parallel_for and pipeline constructs to ease development . You can write your own Parallel constructs similar to the parallel_for and pipeline by using the basic Korus API. You can call Korus from other language environments. Guidelines and Best PracticesGuidelines and best practices to use Korus in optimal manner can be found here Performance BenchmarksWe have evaluated Korus in various test scenarios and the results can be found here Commercial UsageKorus is released under GPLv3 and is free to use as per terms of GPLv3. For specific commercial usage of Korus, please contact us at ilabsconsulting@impetus.com Short Term RoadmapHave a maven based build mechanism. Provide out of the box Distributed & Grid based deployment Provide support for connectivity with multiple language environments.Currently only Erlang is supported. Contributing To KorusIf you are interested in contributing to Korus, please contact or send the patches to the project owners. Since we have just started, we are keeping it this way. Once the momentum grows we will be going the complete open source model where anyone can send a patch and the checkins will be moderated. About UsWe are Impetus Labs or iLabs as we call it. iLabs is a R&D consulting division of software product R&D company called as Impetus technologies. (http://www.impetus.com). iLabs focuses on innovations with next generation technologies and creates practice areas and new products around them. iLabs is actively involved working on High Performance computing technologies, ranging from distributed/parallel computing, GPU based software, Hadoop and related technologies. iLabs is also working on various other Open Source initiatives. [Less]
Created 12 months ago.

0 Users

What is ParaJParaJ is set of parallel algorithms simplifying creation of multi-threaded programs. Example usage of Feed Engine public void convert(InputStream in, OutputStream out) { ... [More] CsvReader reader = initializeReader(in); FeedEngine engine = new FeedEngine(); engine.setMaxErrorCount(10); engine.addProducer(new CsvRecordReader(reader)); engine.addConsumer(new Transformer()); engine.addConsumer(new Transformer()); engine.addConsumer(new Transformer()); engine.runUntilAllProcessed(); logErrors(engine.getErrors()); writeToOutputStream(out, records); }CvsRecordReader private static class CsvRecordReader implements Producer { private final CsvReader reader; public CsvRecordReader(CsvReader reader) { this.reader = reader; } public String[] produce() throws Exception { if (!reader.readRecord()) { return null; } return reader.getValues(); } }Transformer private class Transformer implements Consumer { public void consume(String[] inRecord) throws Exception { String effDate = inRecord[0]; String statType = inRecord[1]; String key1 = inRecord[2]; String key2 = inRecord[3]; String value = inRecord[4]; if (SIMPLE_VALUES.contains(statType)) { handleSimpleType(effDate, statType, key1, value); } else if (statType.equalsIgnoreCase("CORR")) { handleCorrelation(effDate, key1, key2, value); } } (...) } [Less]
Created 12 months ago.

0 Users

Take Five is an actor-based system for C++, extending its capability to allow multithreaded systems without locks and explicit threads. Take Five uses the actor (or active object) model, where ... [More] classes derive from an Actor type, which allow them to be efficiently scheduled by behind-the-scenes worker threads. Requires Boost + Boost.Thread. Usage: Make sure your project 1) points to the Boost headers and 2) includes the Boost.Thread library. Then, point your source to the include: #include "takefive/takefive.hpp"Create actors based on Actor: class Msg_Actor : public Take_Five::Actor { public: Msg_Actor *next_in_line; void pass(int token) { if (token) send_to(next_in_line, &Msg_Actor::pass, --token); else exit(0); } };Lastly, start up the stage, which will fire up the scheduler threads: Take_Five::Stage s; s.start(); s.director.send_to(&first_actor, &First_Actor::first_msg, arg1, arg2, etc); [Less]
Created 4 months ago.

0 Users

Taps is a test tool for the .NET framework and Mono. It is inspired on Perl's testing facilities and therefore quite different from the likes of tools like NUnit. Taps runs test scripts and expects to ... [More] see output that conforms to the TAP protocol on their stdouts. Test scripts use the TAP class to run tests that generate the expected output. Here is a minimal test script: using Taps; class HelloTest: TAP { static void Main() { Ok(true,"Hello, world"); } }The list below lists some features of Taps. Perl Test::More-like function vocabulary. Runs a single test script, multiple test scripts or a directory tree of test scripts. Can show per-test timings. Outputs diagnostic info of failed tests in human readable, yaml or "visual studio error list" compatible format. Can run multiple test scripts concurrently. Allows a test script to run tests in multiple threads. Does deep comparison of complex data structures and if they are not equal outputs them annotated with a clear path to the differing item. Supports testing of classes and methods that have the internal access modifier. Output readable by TAP consumers. You can find installation instructions in the README. The documentation is included in the downloads, but you can also read it online here. To contact the project owner directly add an @gmail.com to his username. [Less]
Created 9 months ago.

0 Users

基于 D 2.0 + druntime,编译器推荐 DMD 2.0 最新版本(注意:目前 d-phoenix 仅兼容 Windows ,其他平台暂未列入计划中)。 初始版本 0.5.1 推荐使用 DMD ... [More] 2.019,因为这个版本还没有移植到 druntime 上。 如果想要体验 druntime ,请使用 DMD 2.021 或 DMD 2.0 最新版本并 Check out 最新版本。 老实说,我也不知道这个项目会做到什么地步。 现在已经完成常见数据结构,并发布初始版本 0.5.1。 并行/并发这块设计还没想好,可能会对 Thread 有些增改。 已经有了些概念,而且也做了些封装。 在做完数据结构这块,接下来会做一些国际化的准备。 因为线程是带有区域信息的,先做这些对以后的工作能提供莫大的便利。 目前在线程提供支持方面,仅仅实现 Windows 平台,并且优先考虑支持 Windows 平台,不过同时也保留了其他平台实现的接口,且有些函数已经兼容 Linux平台。 数据结构是平台独立的。 关于性能:只举一例,当年 STL 出世的时候,着实嘲笑了 C 库的 qsort 一把。本人也很自豪的说,d-phoenix 项目的排序功能性能完全可以媲美 STL 的 sort 函数。不客气的说,只高不低,哇哈哈~ Change Log: 2008-11-24 增加 API 文档(简体中文)。 2008-11-20 释出初始版本 0.5.1。这个版本中完成了大部分常见数据结构,以及部分编解码( 全部几种在 Unicode 上)和线程操作 API。 此外,还完成了 C Runtime 封装和基础函数功能。 详情请参见 Release Note 。 [Less]
Created about 1 year ago.

0 Users

What is nsplit and npmap?nsplit is a n-process parallel/concurrent mapping function library based on Erlang/OTP rpc:async_call/4 function. The module has an external function: npmap(N, F, L): ... [More] spawn N processes to lists:map(F, L) The npmap/3 function is also available as an independent module npmap.erl from nsplit-0.4. deprecated functionsThe module has two deprecated external functions: list_nsplit(N, L): splits a list L into N-member two-level lists example: list_nsplit(3, [a,b,c,d,e,f,g]) -> [[a,b,c],[d,e],[f,g]] pmap(F, L): spawn parallel processes to lists:map(F, L) notesThe svn tree is manually edited and imported from the local repository The tar.gz file is only included in the RB and REL branches/tags, not in the trunk [Less]
Created 12 months ago.

0 Users

The project is devoted to creation of control system modelling environment with high interactivity(modelling in real-time or on-line modelling).
Created 12 months ago.