7 Pages

google-cluster

Course: COMP 3361, Fall 2009
School: Old Dominion
Rating:
 
 
 
 
 

Word Count: 4010

Document Preview

SEARCH WEB FOR A PLANET: THE GOOGLE CLUSTER ARCHITECTURE AMENABLE TO EXTENSIVE PARALLELIZATION, GOOGLES WEB SEARCH APPLICATION LETS DIFFERENT QUERIES RUN ON DIFFERENT PROCESSORS AND, BY PARTITIONING THE OVERALL INDEX, ALSO LETS A SINGLE QUERY USE MULTIPLE PROCESSORS. TO HANDLE THIS WORKLOAD, GOOGLES ARCHITECTURE FEATURES CLUSTERS OF MORE THAN 15,000 COMMODITYCLASS PCS WITH FAULT-TOLERANT SOFTWARE. THIS...

Register Now

Unformatted Document Excerpt

Coursehero >> Virginia >> Old Dominion >> COMP 3361

Course Hero has millions of student submitted documents similar to the one
below including study guides, practice problems, reference materials, practice exams, textbook help and tutor support.

Course Hero has millions of student submitted documents similar to the one below including study guides, practice problems, reference materials, practice exams, textbook help and tutor support.
SEARCH WEB FOR A PLANET: THE GOOGLE CLUSTER ARCHITECTURE AMENABLE TO EXTENSIVE PARALLELIZATION, GOOGLES WEB SEARCH APPLICATION LETS DIFFERENT QUERIES RUN ON DIFFERENT PROCESSORS AND, BY PARTITIONING THE OVERALL INDEX, ALSO LETS A SINGLE QUERY USE MULTIPLE PROCESSORS. TO HANDLE THIS WORKLOAD, GOOGLES ARCHITECTURE FEATURES CLUSTERS OF MORE THAN 15,000 COMMODITYCLASS PCS WITH FAULT-TOLERANT SOFTWARE. THIS ARCHITECTURE ACHIEVES SUPERIOR PERFORMANCE AT A FRACTION OF THE COST OF A SYSTEM BUILT FROM FEWER, BUT MORE EXPENSIVE, HIGH-END SERVERS. Luiz Andr Barroso Jeffrey Dean Urs Hlzle Google Few Web services require as much computation per request as search engines. On average, a single query on Google reads hundreds of megabytes of data and consumes tens of billions of CPU cycles. Supporting a peak request stream of thousands of queries per second requires an infrastructure comparable in size to that of the largest supercomputer installations. Combining more than 15,000 commodity-class PCs with fault-tolerant software creates a solution that is more cost-effective than a comparable system built out of a smaller number of high-end servers. Here we present the architecture of the Google cluster, and discuss the most important factors that inuence its design: energy efciency and price-performance ratio. Energy efciency is key at our scale of operation, as power consumption and cooling issues become signicant operational factors, taxing the lim- its of available data center power densities. Our application affords easy parallelization: Different queries can run on different processors, and the overall index is partitioned so that a single query can use multiple processors. Consequently, peak processor performance is less important than its price/ performance. As such, Google is an example of a throughput-oriented workload, and should benefit from processor architectures that offer more on-chip parallelism, such as simultaneous multithreading or on-chip multiprocessors. Google architecture overview Googles software architecture arises from two basic insights. First, we provide reliability in software rather than in server-class hardware, so we can use commodity PCs to build a high-end computing cluster at a low-end 22 Published by the IEEE Computer Society 0272-1732/03/$17.00 2003 IEEE price. Second, we tailor the design for best aggregate request throughput, not peak server response time, since we can manage response times by parallelizing individual requests. We believe that the best price/performance tradeoff for our applications comes from fashioning a reliable computing infrastructure from clusters of unreliable commodity PCs. We provide reliability in our environment at the software level, by replicating services across many different machines and automatically detecting and handling failures. This softwarebased reliability encompasses many different areas and involves all parts of our system design. Examining the control flow in handling a query provides insight into the highlevel structure of the query-serving system, as well as insight into reliability considerations. Google Web server Spell checker Ad server Index servers Document servers Figure 1. Google query-serving architecture. Serving a Google query When a user enters a query to Google (such as www.google.com/search?q=ieee+society), the users browser rst performs a domain name system (DNS) lookup to map www.google.com to a particular IP address. To provide sufcient capacity to handle query trafc, our service consists of multiple clusters distributed worldwide. Each cluster has around a few thousand machines, and the geographically distributed setup protects us against catastrophic data center failures (like those arising from earthquakes and large-scale power failures). A DNS-based load-balancing system selects a cluster by accounting for the users geographic proximity to each physical cluster. The load-balancing system minimizes round-trip time for the users request, while also considering the available capacity at the various clusters. The users browser then sends a hypertext transport protocol (HTTP) request to one of these clusters, and thereafter, the processing of that query is entirely local to that cluster. A hardware-based load balancer in each cluster monitors the available set of Google Web servers (GWSs) and performs local load balancing of requests across a set of them. After receiving a query, a GWS machine coordinates the query execution and formats the results into a Hypertext Markup Language (HTML) response to the users browser. Figure 1 illustrates these steps. Query execution consists of two major phases.1 In the first phase, the index servers consult an inverted index that maps each query word to a matching list of documents (the hit list). The index servers then determine a set of relevant documents by intersecting the hit lists of the individual query words, and they compute a relevance score for each document. This relevance score determines the order of results on the output page. The search process is challenging because of the large amount of data: The raw documents comprise several tens of terabytes of uncompressed data, and the inverted index resulting from this raw data is itself many terabytes of data. Fortunately, the search is highly parallelizable by dividing the index into pieces (index shards), each having a randomly chosen subset of documents from the full index. A pool of machines serves requests for each shard, and the overall index cluster contains one pool for each shard. Each request chooses a machine within a pool using an intermediate load balancerin other words, each query goes to one machine (or a subset of machines) assigned to each shard. If a shards replica goes down, the load balancer will avoid using it for queries, and other components of our cluster-management system will try to revive it or eventually replace it with another machine. During the downtime, the system capacity is reduced in proportion to the total fraction of capacity that this machine represented. However, service remains uninterrupted, and all parts of the index remain available. The nal result of this rst phase of query execution is an ordered list of document identiers (docids). As Figure 1 shows, the second MARCHAPRIL 2003 23 GOOGLE SEARCH ARCHITECTURE phase involves taking this list of docids and computing the actual title and uniform resource locator of these documents, along with a query-specific document summary. Document servers (docservers) handle this job, fetching each document from disk to extract the title and the keyword-in-context snippet. As with the index lookup phase, the strategy is to partition the processing of all documents by randomly distributing documents into smaller shards having multiple server replicas responsible for handling each shard, and routing requests through a load balancer. The docserver cluster must have access to an online, low-latency copy of the entire Web. In fact, because of the replication required for performance and availability, Google stores dozens of copies of the Web across its clusters. In addition to the indexing and documentserving phases, a GWS also initiates several other ancillary tasks upon receiving a query, such as sending the query to a spell-checking system and to an ad-serving system to generate relevant advertisements (if any). When all phases are complete, a GWS generates the appropriate HTML for the output page and returns it to the users browser. allelizing the search over many machines, we reduce the average latency necessary to answer a query, dividing the total computation across more CPUs and disks. Because individual shards dont need to communicate with each other, the resulting speedup is nearly linear. In other words, the CPU speed of the individual index servers does not directly influence the searchs overall performance, because we can increase the number of shards to accommodate slower CPUs, and vice versa. Consequently, our hardware selection process focuses on machines that offer an excellent request throughput for our application, rather than machines that offer the highest singlethread performance. In summary, Google clusters follow three key design principles: Software reliability. We eschew fault-tolerant hardware features such as redundant power supplies, a redundant array of inexpensive disks (RAID), and highquality components, instead focusing on tolerating failures in software. Use replication for better request throughput and availability. Because machines are inherently unreliable, we replicate each of our internal services across many machines. Because we already replicate services across multiple machines to obtain sufficient capacity, this type of fault tolerance almost comes for free. Price/performance beats peak performance. We purchase the CPU generation that currently gives the best performance per unit price, not the CPUs that give the best absolute performance. Using commodity PCs reduces the cost of computation. As a result, we can afford to use more computational resources per query, employ more expensive techniques in our ranking algorithm, or search a larger index of documents. Using replication for capacity and fault-tolerance We have structured our system so that most accesses to the index and other data structures involved in answering a query are read-only: Updates are relatively infrequent, and we can often perform them safely by diverting queries away from a service replica during an update. This principle sidesteps many of the consistency issues that typically arise in using a general-purpose database. We also aggressively exploit the very large amounts of inherent parallelism in the application: For example, we transform the lookup of matching documents in a large index into many lookups for matching documents in a set of smaller indices, followed by a relatively inexpensive merging step. Similarly, we divide the query stream into multiple streams, each handled by a cluster. Adding machines to each pool increases serving capacity, and adding shards accommodates index growth. By par- Leveraging commodity parts Googles racks consist of 40 to 80 x86-based servers mounted on either side of a custom made rack (each side of the rack contains twenty 20u or forty 1u servers). Our focus on price/performance favors servers that resemble mid-range desktop PCs in terms of their components, except for the choice of large disk 24 IEEE MICRO drives. Several CPU generations are in active service, ranging from single-processor 533MHz Intel-Celeron-based servers to dual 1.4GHz Intel Pentium III servers. Each server contains one or more integrated drive electronics (IDE) drives, each holding 80 Gbytes. Index servers typically have less disk space than document servers because the former have a more CPU-intensive workload. The servers on each side of a rack interconnect via a 100-Mbps Ethernet switch that has one or two gigabit uplinks to a core gigabit switch that connects all racks together. Our ultimate selection criterion is cost per query, expressed as the sum of capital expense (with depreciation) and operating costs (hosting, system administration, and repairs) divided by performance. Realistically, a server will not last beyond two or three years, because of its disparity in performance when compared to newer machines. Machines older than three years are so much slower than current-generation machines that it is difficult to achieve proper load distribution and conguration in clusters containing both types. Given the relatively short amortization period, the equipment cost gures prominently in the overall cost equation. Because Google servers are custom made, well use pricing information for comparable PC-based server racks for illustration. For example, in late 2002 a rack of 88 dual-CPU 2-GHz Intel Xeon servers with 2 Gbytes of RAM and an 80-Gbyte hard disk was offered on RackSaver.com for around $278,000. This gure translates into a monthly capital cost of $7,700 per rack over three years. Personnel and hosting costs are the remaining major contributors to overall cost. The relative importance of equipment cost makes traditional server solutions less appealing for our problem because they increase performance but decrease the price/performance. For example, four-processor motherboards are expensive, and because our application parallelizes very well, such a motherboard doesnt recoup its additional cost with better performance. Similarly, although SCSI disks are faster and more reliable, they typically cost two or three times as much as an equal-capacity IDE drive. The cost advantages of using inexpensive, PC-based clusters over high-end multi- processor servers can be quite substantial, at least for a highly parallelizable application like ours. The example $278,000 rack contains 176 2-GHz Xeon CPUs, 176 Gbytes of RAM, and 7 Tbytes of disk space. In comparison, a typical x86-based server contains eight 2-GHz Xeon CPUs, 64 Gbytes of RAM, and 8 Tbytes of disk space; it costs about $758,000.2 In other words, the multiprocessor server is about three times more expensive but has 22 times fewer CPUs, three times less RAM, and slightly more disk space. Much of the cost difference derives from the much higher interconnect bandwidth and reliability of a high-end server, but again, Googles highly redundant does architecture not rely on either of these attributes. Operating thousands of mid-range PCs instead of a few high-end multiprocessor servers incurs signicant system administration and repair costs. However, for a relatively homogenous application like Google, where most servers run one of very few applications, these costs are manageable. Assuming tools to install and upgrade software on groups of machines are available, the time and cost to maintain 1,000 servers isnt much more than the cost of maintaining 100 servers because all machines have identical congurations. Similarly, the cost of monitoring a cluster using a scalable application-monitoring system does not increase greatly with cluster size. Furthermore, we can keep repair costs reasonably low by batching repairs and ensuring that we can easily swap out components with the highest failure rates, such as disks and power supplies. The power problem Even without special, high-density packaging, power consumption and cooling issues can become challenging. A mid-range server with dual 1.4-GHz Pentium III processors draws about 90 W of DC power under load: roughly 55 W for the two CPUs, 10 W for a disk drive, and 25 W to power DRAM and the motherboard. With a typical efciency of about 75 percent for an ATX power supply, this translates into 120 W of AC power per server, or roughly 10 kW per rack. A rack comfortably ts in 25 ft2 of space, resulting in a power density of 400 W/ft2. With higher-end processors, the power density of a rack can exceed 700 W/ft2. MARCHAPRIL 2003 25 GOOGLE SEARCH ARCHITECTURE Table 1. Instruction-level measurements on the index server. Characteristic Cycles per instruction Ratios (percentage) Branch mispredict Level 1 instruction miss* Level 1 data miss* Level 2 miss* Instruction TLB miss* Data TLB miss* Value 1.1 5.0 0.4 0.7 0.3 0.04 0.7 Hardware-level application characteristics Examining various architectural characteristics of our application helps illustrate which hardware platforms will provide the best price/performance for our query-serving system. Well concentrate on the characteristics of the index server, the component of our infrastructure whose price/performance most heavily impacts overall price/performance. The main activity in the index server consists of decoding compressed information in the inverted index and nding matches against a set of documents that could satisfy a query. Table 1 shows some basic instruction-level measurements of the index server program running on a 1-GHz dualprocessor Pentium III system. The application has a moderately high CPI, considering that the Pentium III is capable of issuing three instructions per cycle. We expect such behavior, considering that the application traverses dynamic data structures and that control ow is data dependent, creating a significant number of difficult-to-predict branches. In fact, the same workload running on the newer Pentium 4 processor exhibits nearly twice the CPI and approximately the same branch prediction performance, even though the Pentium 4 can issue more instructions concurrently and has superior branch prediction logic. In essence, there isnt that much exploitable instruction-level parallelism (ILP) in the workload. Our measurements suggest that the level of aggressive out-oforder, speculative execution present in modern processors is already beyond the point of diminishing performance returns for such programs. A more protable way to exploit parallelism for applications such as the index server is to leverage the trivially parallelizable computation. Processing each query shares mostly readonly data with the rest of the system, and constitutes a work unit that requires little communication. We already take advantage of that at the cluster level by deploying large numbers of inexpensive nodes, rather than fewer highend ones. Exploiting such abundant threadlevel parallelism at the microarchitecture level appears equally promising. Both simultaneous multithreading (SMT) and chip multiprocessor (CMP) architectures target thread-level parallelism and should improve the performance of many of our servers. Some early * Cache and TLB ratios are per instructions retired. Unfortunately, the typical power density for commercial data centers lies between 70 and 150 W/ft2, much lower than that required for PC clusters. As a result, even low-tech PC clusters using relatively straightforward packaging need special cooling or additional space to bring down power density to that which is tolerable in typical data centers. Thus, packing even more servers into a rack could be of limited practical use for large-scale deployment as long as such racks reside in standard data centers. This situation leads to the question of whether it is possible to reduce the power usage per server. Reduced-power servers are attractive for large-scale clusters, but you must keep some caveats in mind. First, reduced power is desirable, but, for our application, it must come without a corresponding performance penalty: What counts is watts per unit of performance, not watts alone. Second, the lower-power server must not be considerably more expensive, because the cost of depreciation typically outweighs the cost of power. The earlier-mentioned 10 kW rack consumes about 10 MW-h of power per month (including cooling overhead). Even at a generous 15 cents per kilowatt-hour (half for the actual power, half to amortize uninterruptible power supply [UPS] and power distribution equipment), power and cooling cost only $1,500 per month. Such a cost is small in comparison to the depreciation cost of $7,700 per month. Thus, low-power servers must not be more expensive than regular servers to have an overall cost advantage in our setup. 26 IEEE MICRO experiments with a dual-context (SMT) Intel Xeon processor show more than a 30 percent performance improvement over a single-context setup. This speedup is at the upper bound of improvements reported by Intel for their SMT implementation.3 We believe that the potential for CMP systems is even greater. CMP designs, such as Hydra4 and Piranha,5 seem especially promising. In these designs, multiple (four to eight) simpler, in-order, short-pipeline cores replace a complex high-performance core. The penalties of in-order execution should be minor given how little ILP our application yields, and shorter pipelines would reduce or eliminate branch mispredict penalties. The available thread-level parallelism should allow near-linear speedup with the number of cores, and a shared L2 cache of reasonable size would speed up interprocessor communication. Large-scale multiprocessing As mentioned earlier, our infrastructure consists of a massively large cluster of inexpensive desktop-class machines, as opposed to a smaller number of large-scale sharedmemory machines. Large shared-memory machines are most useful when the computation-to-communication ratio is low; communication patterns or data partitioning are dynamic or hard to predict; or when total cost of ownership dwarfs hardware costs (due to management overhead and software licensing prices). In those situations they justify their high price tags. At Google, none of these requirements apply, because we partition index data and computation to minimize communication and evenly balance the load across servers. We also produce all our software in-house, and minimize system management overhead through extensive automation and monitoring, which makes hardware costs a signicant fraction of the total system operating expenses. Moreover, large-scale shared-memory machines still do not handle individual hardware component or software failures gracefully, with most fault types causing a full system crash. By deploying many small multiprocessors, we contain the effect of faults to smaller pieces of the system. Overall, a cluster solution ts the performance and availability requirements of our service at significantly lower costs. t rst sight, it might appear that there are few applications that share Googles ...

Find millions of documents on Course Hero - Study Guides, Lecture Notes, Reference Materials, Practice Exams and more. Course Hero has millions of course specific materials providing students with the best way to expand their education.

Below is a small sample set of documents:

Old Dominion - COMP - 3361
Chapter 2: Operating-System StructuresSilberschatz, Galvin and Gagne 2009Chapter 2: Operating-System Structuress Operating System Services s User Operating System Interface s System Calls s Types of System Calls s System Programs s Operating System Des
Old Dominion - COMP - 3361
Chapter 1: IntroductionSilberschatz, Galvin and Gagne 2009Chapter 1: Introductions What Operating Systems Do s Computer-System Organization s Computer-System Architecture s Operating-System Structure s Operating-System Operations s Process Management s
University of Florida - ARC - 3181
UNL - CHEM - 869
Henry's Law and the Bends Scuba divers must be very conscious of Caisson's disease, commonly called 'The Bends'. The Bends is a nitrogen solubility problem. Since the air we breathe is 78% nitrogen, nitrogen is dissolved in all of our tissues. The amount
CSU LA - BIOL - 518
MICROBIOLOGY AND MOLECULAR BIOLOGY REVIEWS, Sept. 2004, p. 518537 1092-2172/04/$08.00 0 DOI: 10.1128/MMBR.68.3.518537.2004 Copyright 2004, American Society for Microbiology. All Rights Reserved.Vol. 68, No. 3Determination of the Core of a Minimal Bacter
Allan Hancock College - EE - 301
A PRIMER IN MATLABME C91 Fundamentals of Control Systems I Winter, 1996 J.E. ColgateMatlab is a very powerful application for performing all sorts of analyses on linear systems. For instance, Matlab can be used to solve for pole and zero locations, to s
Miami University - PHY - 182
Solutions to HW on Boltzmann distribution and Entropy1)2)4)As shown in class for a two-level system,5)6)7)8)9)
Oregon State University - CS - 589
Cognitive Walkthrough Mini-ProjectCS 589, Spring 2003(For teams of 3-4: in our experience, teams of 3 or morefind errors much better than smaller teams.)Pick a small aspect of a VPL or VPE you all have experience with oraccess to, and a goal.Possibl
Oregon State University - CS - 589
A Scalable Method for Deductive Generalization in the Spreadsheet Paradigm1Margaret Burnett*, Sherry Yang*, and Jay Summet* Oregon State University Corvallis, Oregon cfw_burnett, summet@cs.orst.edu* *Oregon Institute of Technology Klamath Falls, Oregon
Oregon State University - CS - 589
Journal of Visual Languages and Computing (1997) 8, 375402On the Classification of Visual Languages by Grammar HierarchiesKIM MARRIOTT 1ANDBERND MEYERRS1 Department of Computer Science, Monash University, Clayton, Victoria 3168, Australia, marriott@c
Oregon State University - CS - 589
Int. J. Human-Computer Studies (2001) 54, 237264 doi:10.1006/ijhc.2000.0410 Available online at http:/www.idealibrary.com onStudying the language and structure in non-programmers' solutions to programming problemsJOHN F. PANE, CHOTIRAT &ANN' RATANAMAHAT
Oregon State University - CS - 589
User ManualLabVIEW User ManualNovember 2001 Edition Part Number 320999D-01Worldwide Technical Support and Product Information ni.com National Instruments Corporate Headquarters 11500 North Mopac Expressway Worldwide Offices Australia 03 9879 5166, Aust
Oregon State University - CS - 589
A Cognitive Dimensions QuestionnaireAlan Blackwell and Thomas GreenThis questionnaire was developed as a tool for assessing the usability of information devices by means of the Cognitive Dimensions of Notations framework. For further reading on the fram
Oregon State University - CS - 589
ProgrammingBYCombining programming by example and real-world analogies, users create new behavior out of existing behavior.ExamplesWhy do end users need to program? Anyone can become overwhelmedtrying to cope with information in a world flooded by in
Oregon State University - CS - 589
Development and Evaluation of a Model of Programming ErrorsAndrew J. Ko and Brad A. Myers Human-Computer Interaction Institute School of Computer Science Carnegie Mellon University Pittsburgh, PA 15213 USA ajko@cmu.edu, bam+@cs.cmu.edu AbstractModels of
Lake County - ECE - 190
0J 1f"I \~ - ~. - .-...\I 0 \ n \'I -+. II . . $. rJ > -<jr$- -0 _-. . - :tot \ \ - '. ;_ 0 \ . . :>"'.e - - -.J) Vt, ,I0-;'c.Ir Jf< rct<.r<:(0'5 0'.,.., c.V"-l.0'-"i.",. .V) -L:.0)S\-f u-l;.- r,,00\,I :P"I
UNC - BWV - 850
Praeludium VJohann Sebastian Bach (1685-1750) BWV 85036912151821Public Domain224273033Sheet music from www. MutopiaProject .org Free to download, with the freedom to distribute, modify and perform. Typeset using www. LilyPond .org by Itay P
Lake County - ECE - 190
rJt/\~'>'V'J.j ~.,~ l,.,~, K~~~~k0-b/:)"oI-,I-41CJ-T.,,\:! ~ ., -, -:),.ii!~ ~ r- ~A'1_,;!~ ~ r;:- ,-f-7~I~~ ':>:r>--tc.VI~~>f\-rt 3 ~ ~ -r ~~,~~ ~ .vG"(Jn_-r,~ CJSo-.~'"q11., :>'- " 'I J -A-
Berkeley - EXAM - 170
Practice Final 2 for Math 170 (Fall 2007)12(Math 170) Practice Final 2:2 (1) Let Rn+1 = Rn + 4Rn 2 be a mathematical model with R0 = 1. Whatis R3 ? (2) Let Rn+1 = (Rn )3 3Rn be a mathematical model. How many equilibrium points does Rn have and what a
Berkeley - WEEK - 104
Math 104-006Chapter 12.7: Strategies for Testing SeriesOutline For Today General Approach to Convergence and Divergence of Series.General Method We now have several methods for determining whether or not a series converges. As with integration we wan
Berkeley - MATH - 360
1(Math 360) Multiple Choice Final:April 20, 2009Write all answers in the spaces provided below! No notes or calculators allowed. There is no penalty for guessing and there is no partial credit. Good Luck!Name 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
Arizona - OPTI - 471
Foucault and Wire TestsProf. Russell Chipman Optical Sciences Center Senior Optics Lab, 471AWire Test Wire is moved through beam of light near focus while looking at or imaging exit pupilWire TestWhat is Exit Pupil?Foucault Test Knife edge is moved
East Los Angeles College - LS - 72633
An evolving view of duplex vision: separate but interacting cortical pathways for perception and actionMelvyn A Goodale,1 and David A Westwood2In 1992, Goodale and Milner proposed a division of labour in the visual pathways of the primate cerebral corte
illinoisstate.edu - PSY - 138
Name _ Lab 11 Worksheet Show your work for each problem in the lab: (1) (2)(3) What is the probability of having an IQ of 130 or above?(4) What is the probability of having an IQ of 120 or above?(5) What is the probability of having an IQ score of 91 o
East Los Angeles College - PHYS - 77153
Allan Hancock College - USA - 1919
The CPA's Application to the Communist Internatinal1Application for Membership in the Communist International on Behalf of the Communist Party of America.[November 24, 1919]by Louis C. FrainaOriginally published in A. Mitchell Palmer (ed.), Red Radic
Allan Hancock College - USA - 1921
1921 Workerrs Party of America Convention Call1Convention Call to Organize The Workers' Party of America(circa November 1921)From a typewritten document in the Comintern Archive, f. 515, op. 1, d. 77, l. 7-8.A fierce class war is raging throughout th
UNC - GEOG - 491
Available online at www.sciencedirect.comGeoforum 39 (2008) 867878 www.elsevier.com/locate/geoforumComplexity theory, spatial simulation models, and land use dynamics in the Northern Ecuadorian AmazonStephen J. Walsha,, Joseph P. Messina b, Carlos F.
UNC - GEOG - 491
Thematic Layers in a GIS Data StackGIS as Digital Map Layers"All of the layers are referenced to the same coordinate system a spatial referencing system Each layer represents a different geographic theme, phenomena, or featureData IntegrationIntegrate
Texas A&M - ENTO - 606
Model SelectionGENE 606/ENTO 606Review of models Reversible (GTR family): rate matrix, among-site rate variation, base frequencies Non-reversible: accommodate base frequency changes in different parts of tree accommodate changes in rates of sites in d
CSU Northridge - HCHSC - 005
For all you Engineers, Mathematicians, or those who like to work with numbers, try these conversions Ratio of an igloo's circumference to its diameter: Eskimo Pi 2000 pounds of Chinese soup: Won ton 1 mllionth of a mouthwash: 1 microscope Time between sli
Villanova University - ECE - 4790
3/16/99ECE 4790ELECTRICAL COMMUNICATIONS PRACTICUMS Spring 99 PRACTICUM #7Z ERO F ORCING E QUALIZEROBJECTIVES: Want to design an equalizer that forces ISI to vanish at sampling instants in a digital communication receiver. METHOD: A receiver receives
Villanova University - ECE - 4790
3/11/99ECE 4790 E LECTRICAL COMMUNICATIONS PRACTICUMS SPRING 99 PRACTICUM #6 Frame Synchronization in a T1 LineOBJECTIVES: Given a T1 data stream with unknown beginning and end, we want to establish the proper timing for later demultiplexing of the data
Villanova University - ECE - 4790
2/25/99ECE 4790 E LECTRICAL C OMMUNICATIONS P RACTICUMS SPRING 99 P RACTICUM #5 QUADRATURE A MPLITUDE MULTIPLEXINGOBJECTIVES: QAM is a way of sending two signals simultaneously over the same bandwidth. We will use the qam option of modulate and demod fo
Villanova University - ECE - 4790
2/9/99ECE 4790 E LECTRICAL C OMMUNICATIONS P RACTICUMS SPRING 99 P RACTICUM #3 A MPLITUDE MODULATIONOBJECTIVES: In this lab we will generate an amplitude modulated version of bond. We will look at its time domain plot, calculate the modulation index and
Villanova University - ECE - 4790
February 11, 1999ECE 4790 ELECTRICAL COMMUNICATIONS P RACTICUMS SPRING 99 P RACTICUM #4FREQUENCY MODULATIONOBJECTIVES: The purpose of this practicum is the generation of FM signals with particular emphasis on FM bandwidth. You will be investigating the
Villanova University - ECE - 4790
9/10/98ECE 4790 E LECTRICAL COMMUNICATIONS P RACTICUMS F ALL 98 P RACTICUM #2 B ANDWIDTH OF R EAL A UDIOOBJECTIVES: In this lab we would like to explore he bandwidth of a real audio signal based on 1): computation and 2): simple listening. For this purp
Villanova University - ECE - 4790
8/26/98ECE 4790 E LECTRICAL COMMUNICATIONS P RACTICUMS F ALL 98 P RACTICUM #1 S IGNAL AND N OISE : POWER AND SNROBJECTIVES: Power and SNR are common themes throughout this course. This practicum attempts to make you fluent in working with them. METHOD:
National Taiwan University - CHEMISTRY - 685
Flammable LiquidsDepartment of Chemistry Ohio State UniversityHerrington.5@osu.eduJohn Herringtonwww.chemistry.ohiostate.edu/ehsProperties of Flammable LiquidsInvisible Vapor is the Main Concern!Properties of Flammable Liquids Definitions: FLASH PO
National Taiwan University - CHEMISTRY - 685
Flammable LiquidsFlammable Liquids and Fire Codes John Herrington Department of ChemistryChemistry 685Flammable LiquidsLecture for 30 minutes or so q Three Demonstrations qChemistry 685Flammable LiquidsHands-On Fire Extinguisher Training Thursday
National Taiwan University - CHEMISTRY - 685
RADIATION SAFETYRobert E. Peterson, Jr. University Radiation Safety Officer The Ohio State UniversityIntroduction to Radiation SafetyIntroduction Societal Benefits of Radiation Sources of Radiation Occupational Risks Protection Methods Personal Dosimet
National Taiwan University - CHEMISTRY - 685
Vacuum and Pressure SystemsProfessor John Swenton Department of ChemistryVacuum and Pressure SystemsVacuum DistillationsVacuum and Pressure SystemsCommon Heating Devices Paraffin Oil (Mineral Oil)- Mineral oil is useable to about 160oC. It is cheap,
National Taiwan University - CHEMISTRY - 685
Laser Safety: Practical Laser SafetyJohn W. HerringtonLaser Safety: ANSI Z136.1-2000Major Revisions: 1. New MPE levels 2. Laser pointers 3. Eliminate class 2A 4. Non-beam hazards 5. Ultra-short pulsesLaser Safetywww.laserinstitute.org Z136.1 Safe Us
National Taiwan University - CHEMISTRY - 685
LABORATORY HOOD SAFETYLaboratory Hood Safety29 CFR 1910.1450 Laboratory Safety StandardLaboratory Hood SafetyFlammable and Toxic AtmospheresLaboratory Hood SafetyCorrosive GasesLaboratory Hood SafetyUnstable ExperimentLaboratory Hood Safety Types
National Taiwan University - FACULTY - 685
OBJECTIVESq q qHistoryoftheStandards(Laws) YourRights&Responsibilities TrainingandRecordKeepingq qEmployees Visitors/ContractorsOBJECTIVESq10StepstoHelpYouImplement theCHPintoYourLabs Ifwehavetime: DetailsoftheCHPq qqMSDSs Labeling,etc.WHAT IS
National Taiwan University - FACULTY - 685
Faculty TrainingJohn W. Herrington 0013 Evans Lab 96791820 www.chemistry.ohio state.edu/ehsFaculty TrainingWhy Are You Here? Because the Chairman forced you? In order to comply with State law To help create a safe working environment for your students
National Taiwan University - CHEMISTRY - 685
Chemical Waste DisposalAn overview of hazardous waste management issues and procedures including selected "cradle to grave" requirements of RCRLNeed Help? Some Available RCRA Hotlinesq Ohio EPA Small Business Assistance Office, 6147288575 q Ohio EPA Di
National Taiwan University - CHEMISTRY - 685
PERSONAL PROTECTIVE EQUIPMENTJohn Herrington, Department of ChemistryPersonal Protective Equipments s s sMidterm on Thursday (5:30 and 7:30PM) Bring a #2 pencil 35 multiple-choice questions Alternate seatingPersonal Protective Equipmentss s s s s s
National Taiwan University - CHEMISTRY - 685
The OSHA Laboratory StandardJohn W. Herrington Safety CoordinatorDepartment of Chemistry The Ohio State UniversityHerrington.5@osu.eduThe OSHA Laboratory Standard CFR 1910.1450: Occupational Exposure to Hazardous Chemicals in Laboratories History Cam
National Taiwan University - CHEMISTRY - 685
Chemistry 685 Safety SeminarEmergency Response And Laboratory SafetyChemistry 685John HerringtonSafety Coordinator, Department of Chemistry Health and Safety Officer (OSHA Coordinator), College of Math and Physical Sciences 0042 Evans Lab Phone: 9-679
National Taiwan University - CHEMISTRY - 685
Name_Department_Chemistry 685Homework Assignment The Safety Webpage Due 1/26/2006InstructionsAt a computer of your choice (that is internet ready), use Internet Explorer or Netscape Navigator (with Adobe Acrobat Reader) and go to: http:/www.chemistry.
National Taiwan University - CHEMISTRY - 685
Name_Department_Chemistry 685Homework Assignment The Safety Webpage Due 1/22/2009InstructionsAt a computer of your choice (that is internet ready), use a browser (with Adobe Acrobat Reader) to go to: http:/www.chemistry.ohio-state.edu/ehs .1) Click o
National Taiwan University - CHEMISTRY - 685
Name_Department_Chemistry 685Homework Assignment The Safety Webpage Due 1/22/2009InstructionsAt a computer of your choice (that is internet ready), use a browser (with Adobe Acrobat Reader) to go to: http:/www.chemistry.ohio-state.edu/ehs . 1) Click o
Duke - CPS - 004
list of sidebarsJava Sidebars by Chapter Interlude 1 A Community of Interacting Entities Sidebar: Selected String MethodsChapter 3 Things, Types, and Names Sidebar: Java Naming Syntax and Conventions Sidebar: Java Primitive TypesChapter 5 Expressions:
Duke - CPS - 004
glossaryAabstract method A method with no body; a method signature followed by a semi-colon. alternative In a conditional statement, the optional sub-statement to be executed if the boolean test expression's value is false. applet A Java program capable
Duke - CPS - 004
9Chapter 9 Animate ObjectsChapter Overview How do I create an object that can act by itself? This chapter builds on the previous ones to create an object capable of acting without an external request. Such an object has its own instruction follower, in
Duke - CPS - 004
7Chapter 7 Building New Things: Classes and ObjectsChapter Overview How do I group together related rules? How do I build a computational object? What are Java programs really made of?In this chapter, you will learn to put together the pieces you've a
Duke - CPS - 004
8Chapter 8 Designing With ObjectsChapter Overview How do I design using objects and entities? In the preceding chapters, we have seen how interfaces specify contracts and how classes implement them. We have used expressions and statements to create ins
Duke - CPS - 004
4Chapter 4 Specifying Behavior: InterfacesChapter Overview How do programs (and people) know what to expect? How do I describe a part or property of an entity to other community members? This chapter introduces the idea of interfaces as partial program
Duke - CPS - 004
10Chapter 10 InheritanceChapter Overview How do I simplify the program design task by reusing existing code? How do I create variants on things I already have? When is it not appropriate to reuse code?This chapter covers class-based inheritance as a w