14 projects tagged "Parallel Computing"
librsb is a library for sparse matrix computations featuring the Recursive Sparse Blocks (RSB) matrix format. This format allows cache-efficient and multithreaded (that is, shared memory parallel) operations on large sparse matrices. The most common operations necessary to iterative solvers are available (matrix-vector multiplication, triangular solution, rows/columns scaling, diagonal extraction/setting, blocks extraction, norm computation, formats conversion). The RSB format is especially well-suited for symmetric and transposed multiplication variants. On these variants, librsb has been found to be faster than Intel MKL's implementation for CSR. Most numerical kernels code is auto-generated, and the supported numerical types can be chosen by the user at buildtime. librsb implements the Sparse BLAS standard, as specified in the BLAS Forum documents.
Wisecracker is a high performance distributed cryptanalysis framework that leverages GPUs and multiple CPUs. It allows security researchers to write their own cryptanalysis tools that can distribute brute-force cryptanalysis work across multiple systems with multiple multi-core processors and GPUs. Security researchers can also use the sample tools provided out-of-the-box. The differentiating aspect of Wisecracker is that it uses OpenCL and MPI together to distribute the work across multiple systems, each having multiple CPUs and/or GPUs.
Portable Computing Language (pocl) aims to become an efficient implementation of the OpenCL standard. In addition to producing an easily-portable Open Source implementation, another major goal of the project is improving performance portability of OpenCL programs with compiler optimizations, reducing the need for target-dependent manual optimizations. At the core of pocl is a set of LLVM passes used to statically parallelize multiple work items with the kernel compiler, even in the presence of work group barriers. This enables parallelization of the fine-grained static concurrency in the work groups in multiple ways (SIMD, VLIW, superscalar, etc.). The code base is modularized to allow easy adding of new "device drivers" in the host-device layer. A generic multithreaded "target driver" is included. It allows running OpenCL applications on a host which supports the pthread library with multithreading at the work group granularity.
dispy is a Python framework for parallel execution of computations by distributing them across multiple processors in a single machine (SMP), or among many machines in a cluster or grid. The computations can be standalone programs or Python functions. dispy is well suited for the data parallel (SIMD) paradigm where a computation is evaluated with different (large) datasets independently (similar to Hadoop, MapReduce, Parallel Python). dispy features include automatic distribution of dependencies (files, Python functions, classes, modules), client-side and server-side fault recovery, scheduling of computations to specific nodes, encryption for security, sharing of computation resources if desired, and more.
BitDew is a programmable environment for the management and distribution of data for grid, desktop grid, and cloud systems. It can easily be integrated into large scale computational systems such as XtremWeb, BOINC, Hadoop, Condor, Glite, Unicore, OpenStack, and Eucalyptus. It provides key P2P, grid, and cloud technologies (DHT, BitTorrent, Amazon S3, DropBox) and high level programming interfaces with a simple API for creating, accessing, storing, and moving data with ease, even in highly dynamic and volatile environments.
ScalaBLAST is a high-performance multiprocessor implementation of the NCBI BLAST library. It supports all 5 primary program types (blastn, blastp, tblastn, tblastx, and blastx) and several output formats (pairwise, tabular, and XML). It will run on most multiprocessor systems which have MPI installed, and can run over a wide variety of interconnects, including infiniband, quadrics, and ethernet. It is designed to run a large number of queries against either large or small databases. It parallelizes the BLAST calculations by dynamically scheduling them across processors using a fault-resilient scheme.
HPCC (High Performance Computing Cluster) stores and processes large quantities of data, processing billions of records per second using massive parallel processing technology. Large amounts of data across disparate data sources can be accessed, analyzed, and manipulated in fractions of seconds. HPCC functions as both a processing and a distributed data storage environment capable of analyzing terabytes of information.
YML is a research project that aims to provide tools for using global computing middleware such as GRID, peer to peer, and metacomputing environments. The YML software architecture enables the definition of parallel applications, independently of the underlying middleware used. Parallel applications are defined using a workflow language called YvetteML.
Strategico is an engine for running statistical analysis over groups of time series. It can manage one or more groups (projects) of time series: by default, you can get data from a database or CSV files, normalize them, and then save them inside the engine. The first statistical analysis implemented inside Strategico is the "Long Term Prediction": it automatically finds the best model that fits each time series. Some of the models implemented are mean, trend, linear, exponential smoothing, and Arima. Strategico is scalable: the statistical analysis over each time series (of a project) can be run separately and independently. It is suggested that you set up an HPC Cluster (High Performance Computing) and/or use a resource scheduler like slurm. It is developed with R, one of the most famous statistical languages.