Upload
kyung-young-lee
View
469
Download
5
Tags:
Embed Size (px)
DESCRIPTION
distributed compile system
Citation preview
buted C Compile System on Coord
Team XID
Lee Won GukKim Dong SooLee Kyung YoungLee Hang SeokPark Hyun Joong
[마스터편집] 여기에 제목을 기입하세요
Contents
• Introduction
• What is Coord
• DCC: Architecture
• distcc: Job scheduling
• DCC: Job scheduling
• DCC: Sequence
• User interface
• Reference
[마스터편집] 여기에 제목을 기입하세요
Motives
Advantages
Decreased wait time for builds
Introduction
Our System is
Based on Coord, open source for distributed environment of NHN
Faster time-to-market
Complex and massive softwares
Very long compile time
Idle low spec machines
[마스터편집] 여기에 제목을 기입하세요
A space-based architecture built on distributed hash tables
SBA(Space-based Architecture) –processes communicate with others thru. only spaces
DHT(Distributed Hash Tables) –data identified by hash functions are placed on numerically near nodes
A computing platform to project a single address space on distributed memoriesAs if users worked in a single computing environment
Coord
What Is Coord
Simple APIswrite: write an objectread: read a copy of an objecttake: read an object & delete it
Coord = SBA + DHTsimple to use scale well to large numbers of nodes locate data with low latencybalance the distribution of data evenly amongst the participating nodeshandle node join/leave scalablyease the maintenance of per-node routing Tables
[마스터편집] 여기에 제목을 기입하세요
Coord Applications
Provide inter-process communication, resource share, and synchronization thru. the space
Support a variety of distributed programming models with only simple API(write/read/take)
Proper for general-purpose distributed programming as well as data-/computation-intensive distributed programming
Coordhides some complicated codes for network programming
The peers don’t need to recognize each other since Coordprovides time-/location-decoupling
What Is Coord
Client-Server
Master-Worker -provide a scalable framework for parallel processing
Scatter-Gather -provide an on-the-flyframework for data exchange
Map-Reduce -provide a simplified framework for massive data processing
[마스터편집] 여기에 제목을 기입하세요
What Is Coord
Master-Worker Model
Instantiate a virtual space
Set some keys
a key to write/take jobs
different keys to take/write results
Perform tasks in parallel
[마스터편집] 여기에 제목을 기입하세요
Scatter-Gather Model
What Is Coord
Master-Worker ModelClient-Server Model
Master-Worker Model
[마스터편집] 여기에 제목을 기입하세요
DCC Architecture
[마스터편집] 여기에 제목을 기입하세요
Distcc Job Scheduling
Deamon 1
Host1
Deamon 2
Deamon 3
Deamon 4
Deamon 1
Host2
Deamon 2
Deamon 3
Deamon 4
distcc is a program to distribute builds of C, C++
C or C++ code across several machines on a network
[마스터편집] 여기에 제목을 기입하세요
DCC Job Scheduling
Master
Worker
Worker
Worker Worker
Worker
Resource list Request
Request Job
Coordinatorjob request
[마스터편집] 여기에 제목을 기입하세요
MAKEFILE
Job Job Job Job
Job Job Job Job
Job Job Job Job
Job Job Job Job
Job Job Job Job
Job Job Job Job
Step 1 Generate Job
DCC Sequence
[마스터편집] 여기에 제목을 기입하세요
Step 2 Indicate Jobs
Remote
Local
Remote
DCC Sequence
[마스터편집] 여기에 제목을 기입하세요
• Maintenance of Load-
balancing
• Distributed Preprocessing
• Process Pool
Step 3 Execute Jobs
DCC Sequence
[마스터편집] 여기에 제목을 기입하세요
DCC Sequence
Step 3 Execute Jobs
[마스터편집] 여기에 제목을 기입하세요
User Interface
[마스터편집] 여기에 제목을 기입하세요
Developing Environment
Tools
Bibliography
CentOS ver. 5.3 (Linux kernel 2.6)
VIM 7.0, gedit, Eclipse
Code::Blocks IDE
wxGTK 2.8.10
Coord ver.0.3
C++ 를 이용한 크로스 플랫폼 개발
C++ Standard Library 튜토리얼 레퍼런스
Linux Programming 4th Edition
Reference