Showing posts with label Parallel Processing. Show all posts
Showing posts with label Parallel Processing. Show all posts

Monday, October 05, 2015

Massive Parallel Procssing of Data with SCOPE

SCOPE is an acronym for Structured Computations Optimized for Parallel Execution, a declarative language for working with large-scale data. It is still under development at Microsoft. If you know SQL then working with SCOPE will be quite easy as SCOPE builds on SQL.
The execution environment is different from that RDBMS oriented data.
Data is still modeled as rows. Every row has typed columns and eveyr rowset has a well-defined schema. There is a SCOPe compiler that comes up with optimized execution plan and a runtime execution plan.

Look at this QCount query in SCOPE:

SELECT query, COUNT(*) AS count
FROM "search.log" USING LogExtractor
GROUP BY query
HAVING count > 1000
ORDER BY count DESC;
OUTPUT TO "qcount.result";


You probably know most and the rest you are able to guess.

In the above there is a built-in LogExtractor. You can get it step-by-step going line by line; each step output being the input of next step.

SCOPE requires a software platform for storing and analyzing massive amounts of data and Microsoft has one called 'Cosmos'. Here is graphic of SCOPE processing is carried out.

This post is based on the PDF document you will find here and the image is taken from the same PDF.

Sunday, July 20, 2014

Faster web processing with the new Javascript object SIMD

If you are a HTML5\CSS\Javascript programmer you should look this up.

Parallelism is at the heart of higher performance resulting in lower power requirements and SIMD is
at the fore front. SIMD stands for Single Instruction Multiple Data Instructions. These are called
SIMD instructions that make simlutaneous processing of mulitple data items possible. This is
particularly suited for computations involving image/audio/video; computer vision; preceptual
computing, etc. This kind of operation on multiple data items was not possible directly using
JavaScript till the emrgence of the new Javasript object SIMD.

A picture is worth a paragraph of my gibberish, but here it is for a vector length of 4:



Image Source: https://01.org/node/1495

Here is a quickie on the API:

Here is the speed up in Mozilla browser with processing using SIMD:



The source for the ecmascript for SIMD: ecmascript_simd.js here:

https://github.com/johnmccutchan/ecmascript_simd/blob/master/src/ecmascript_simd.js

 
DMCA.com Protection Status