Parallel programming take advantage of multi-core processors using Parallel studio

Today we have I3 , i7 with 7 cores or 7 processors 1 master and 6 slave processors. But still present applications are not able to utilize processor’s ability to execute programming instructions parallel. to over come unexploited parallelism in present software intel and Microsoft came up with parallel studio.

Parallel programming enables software programs to take advantage of multi core processors from Intel and other processor vendors. Using Intel parallel studio we can write programs in C++,.NET, etc for intel processors.Intel parallel Building blocks PBB is collection of three programming solutions

Intel Clik plus: Clik++ Its a parallel language which is extension of C, C++.Written by MIT for Intel

Intel Threading Building Blocks TBB: is template library written in C++ to exploit power of parallelism using multi-core processors.It avoid complications arising from threading packages like POSIX threads,Windows threads,or Boost threads(in which individual threads created,synchronized and terminated manually).Library abstracts access to multiple processors.Opertions or task are allocated individual core dynamically by library’s runtime engine and by efficient use of CPU cache.A TBB program creates, synchronizes and destroys graphs of dependent tasks according to algorithms.Like in Clik or Clik++ TBB also implements “task stealing” to balance a parallel workload across available processing cores in order to increase core utilization and therefore scaling. If one core completes its work while other cores still have a significant amount of work in their queue, TBB reassigns some of the work from one of the busy cores to the idle core. This dynamic capability decouples the programmer from the machine, allowing applications written using the library to scale to utilize the available processing cores with no changes to the source code or the executable program file. TBB utilized STL heavily.

Intel Array Building Blocks ArBB : C++ library

developed by Intel for exploiting data parallel portions of programs to take advantage of multi-core processors, graphics processing units and Intel Many Integrated Core Architecture (MIC) processors.Goal of MIC is to leverage x86 legacy by creating a x86-compatible multiprocessor architecture that can utilize existing parallelization software tools. such as :

OpenMP (http://openmp.org/wp/) :OpenMP (Open Multiprocessing) is an API that supports multi-platform shared memory multiprocessing programming in C, C++. specifications: http://www.openmp.org/mp-documents/spec30.pdf  though its not scalable as MPI and available on only SMP

OpenCL: Open computing language developed by Apple. is a framework for writing programs that execute across heterogeneous platforms consisting of central processing unit (CPUs), graphics processing unit (GPUs), and other processors. Academic researchers have investigated automatically compiling OpenCL programs into application-specific processors running on FPGAs

Intel Clik Plus:Intel Cilk Plus differs from Cilk and Cilk++ by adding array extensions, being incorporated in a commercial compiler (from Intel), and compatibility with existing debuggers

http://software.intel.com/en-us/intel-cilk-plus

Few examples for start:http://software.intel.com/en-us/search/site?f%5B0%5D=bundle%3Ablog&f%5B1%5D=im_field_topic%3A20867

Ubiquitous Computing is were everyone is moving now

Ubiquity in next frontier where software is moving what are important characteristics of ubiquitiy

If we see here how different stack are built over a period of time For instance: Oracle Stack from storage using sun technology and data base oracle in middleware: Oracle fusion middleware, Operating system solaris, and hypervisor..to ERP solutions like peoplesoft, Sielble, and Oracle financials and retail apps..On all these areas solutions should work across what was missing was communication piece for which also Oracle acquired lots of communication companies…Now Same way

Microsoft Stack: Windows OS server /networking , HyperV hypervisor,SQL server database, biztalk middleware,MSBI Bi, dynamics as ERP with financial/CRM etc module..there is PAAS which can leverage this all across Called Azure..now software are cutting these boundaries..

If we take definition of Ubiquitous computing it collective wisdom of moving toward miniaturization, inexpensive, seamlessly integrated and wireless networked devices working on all daily use items and objects like watch to fridge etc..same vision on which long back

all models of ubiquitous computing share a vision of small, inexpensive, robust networked processing devices, distributed at all scales throughout everyday life and generally turned to distinctly common-place ends.We have ambient intelligence which are aware of people needs by unifying telecom,networking and computing needs creating context aware pervasive computing. On back hand where we have all the data stored in cloud storage ..we have integrated stack..not every component of stack needs to talk to this new ubiquitous computing devices and software.

what technologies are colliding there:

Data communications and wireless networking technologies: moving towards new form of devices sensitive to environment and self adjusting , without wire connecting to each other creating meshup network. drive towards ubiquitious computing is essential to networks drive towards wireless networking.
Middleware: We have PAAS PlAform As Service in cloud mere all miniaturized device have limited storage will store data. To leverage this data as well to work all across the virtualization like we have Microsoft azure as discussed above and Oracle fusion middleware
Real-time and embedded systems: all real time messages needs to captured using Real time OS RTOS and passed to devices to interactivity with outside world dynamic.
Sensors and vision technologies: Sensors sense and pass information important part of ubiquitous computing.sensors in fridge senses out of milk and starts interacting with mobile to sent information to retail store to send delivery (its a typical example).
Context awareness and machine learning: device is aware whether its near to bank or near to office or police station and start reacting to relevant application this is geolocation..going deep watch when we go inside water start beaming depth from the river ded comes out and shows time..on same display device.is context aware..still when it goes near to heat heat sensor sends temperature to display.
Information architecture: huge data will be generated from this network now this data needs to be analysed depending on its type its storage ans retrival architecture varies..big data will not stored same way RDBMS is stored.
Image processing and synthesis: and bio metric devices needs to get image of the to authenticate and send information. Image processing algorithm like edge detection algorithm will run over this huge data to get view..like satellite data captured and fed into edge detection algorithm to find water bodies using huge variation in reflectance level as we move from sand to water..

There wold be huge usage of there in next generation BI systems.

So tools like uBIquity will make difference in future:

http://www.cloudvu.com/products/ubiquity-integrated-business-intelligence.php

As BI becomes pervasive everyone would surely want to use it.. its natural evolution process for and user to get attracted to BI system where user can create his own query to find result..as it become pervasive ti would enter into every device and here were it will strat interacting with ubiquity…ubiquity is future in BI.