Last 9 months of my life
Its been sometime since I’ve posted anything on the blog. The last 9 months were one of the most challenging months I’ve faced in my entire life. The MSc course on Computer Science that I follow at University of Moratuwa, Sri Lanka is a course that truly test your determination, courage and intellectual knowledge. Anyone whose interested in the doing this course, beware and be prepared. Because the amount of research you may have to do on different subjects are immense and exam papers are tough. Things are not over yet, I’ve got 15 months (more) of hardship to carry on. With my MSc research project work starting from now on, I will post interesting finding on the world SaaS – Software as a service
Nerds and Geeks – 2nd edition out now
Nerds N’ Geeks is an IT Magazine that gives you the latest technological trends and knowledge on the IT field. Its FREE Online second edition is out now!!! You can download it from http://issuu.com/nerdsngeeks/docs/issue2.
You can read one of my articles on ” how to build your web apps on the cloud” on page 11.
Use cases of Parallel and Concurrent Programming
Parallel and Concurrent computing is a form of computation in which many calculations are carried out simultaneously by many thread of executions [Definition by Dr. Srinath Perera – lecturer at UoM CS department]. Concurrent programs can be executed sequentially on a single processor and Parallel programs can be executed in multi processor environment dealing with multiple computers.
These are three example use cases of Concurrent and Parallel Programming scenarios:
1) Use Case: Search for Extra-Terrestrial Intelligence (SETI)
Actors: |
|
Description: | SETI@home (“SETI at home”) is a distributed computing (grid computing) project using Internet-connected computers, hosted by the Space Sciences Laboratory, at the University of California, Berkeley, in the United States.This usecase describes how SET@home project works on grid computing (parallel computing) model to perform scientific data search and analysis. |
Preconditions: |
|
Normal Flow: |
|
Why use Parallel/Concurrent computing? | One of the main goals of SETI@home was to make use of unlimited & unused computation power of normal PCs connected to the internet and prove the viability and practicality of the ‘distributed grid computing’ concept. |
Benefits | With over 5.2 million participants worldwide, the project is the distributed computing project with the most participants to date. With these increasing numbers of volunteer user’s computation power, the funders for the SETI project did not need to buy expensive super computers for the computation.As a result of the project SETI project the BOINC environment, a development of the original SETI@home, is providing support for several computationally intensive projects in a wide range of disciplines. |
References |
http://setiathome.ssl.berkeley.edu/ http://setiathome.ssl.berkeley.edu/http://en.wikipedia.org/wiki/SETI |
2) Use Case: Download a file from BitTorrent
Actors: |
|
Description: | BitTorrent is a protocol that enables fast downloading of large files using minimum Internet bandwidth. Unlike other download methods, BitTorrent maximizes transfer speed by gathering pieces of the file internet users want and downloading these pieces simultaneously from people who already have them.This P2P process makes popular and very large files, such as videos and television programs, download much faster than is possible with other protocols.This usecase describes how a Torrent user can search for a torrent and download it from seeds/pears. |
Preconditions: |
|
Normal Flow: |
|
Why use Parallel/Concurrent computing?: | When a user sends out a request to download for a file, the BiTrorrent Tracker locate the file, by querying other computers that are connected to the Internet and running the file-sharing software. So parallel computation principle is applied in this usecase.Torrent software also concurrently manages downloads and uploads of different peers and it also manages the tit-for-tat rating of the user. |
Benefits | BitTorrent protocol allows users to distribute large amounts of data without putting the level of strain on their computers that would be needed for standard Internet hosting. A standard host’s servers can easily be brought to a halt if extreme levels of simultaneous data flow are reached. The protocol works as an alternative data distribution method that makes even small computers like mobile phones with low bandwidth capable of participating in large data transfers. |
References | http://computer.howstuffworks.com/bittorrent2.htm |
3) Use Case: Facial recognition using 3D images/videos at an Airport
Actors: |
|
Description: | With the number of terrorist attacks increasing, airports have started using facial recognition software based on 3D images or videos to identify intruders/terrorists. A newly-emerging trend in facial recognition software uses a 3D model, which claims to provide more accuracy. Capturing a real-time 3D image of a person’s facial surface, 3D facial recognition uses distinctive features of the face.This usecase describes how places like airports can identify intruders using facial recognition software with the help of concurrent computation. |
Trigger: | Security personal sees suspect in the airport premises. |
Normal Flow: |
|
Why use Parallel/Concurrent computing? | The matches for possible face recognition need to be processed quickly. To improve performance of the identification process, algorithms are written with the use of concurrent computation. |
Benefits: | Possible matches are retrieved real time from the recognition software allowing time for administrator identifies intruders before they make an adverse effect. |
References | http://electronics.howstuffworks.com/gadgets/high-tech-gadgets/facial-recognition2.htm |
leave a comment