Scientific Computing - Hardware

1,149 views

Published on

Introduction to servers, HPC, and Cloud Computing

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Scientific Computing - Hardware

  1. 1. Computing Hardware Jeff Allen Quantitative Biomedical Research Center UT Southwestern Medical Center BSCI5096 - 3.26.2013
  2. 2. Outline• Servers• Clusters• The Cloud
  3. 3. Outline• Servers – Concepts & Definitions – Novel properties of servers• Clusters• The Cloud
  4. 4. Servers – Concepts & Definitions “A computer or program thatsupplies data or resources to other machines on a network.” • File Server • Email Server • Database Server • iTunes Server • Web Server • Computing Server server. (n.d.). Collins English Dictionary - Complete & Unabridged 10th Edition. Retrieved March 25, 2013, from Dictionary.com website: http://dictionary.reference.com/browse/server
  5. 5. Servers – Concepts & Definitions• Same hardware components as your Personal Computer – Processor, Memory, Pow er Supply, Hard Drive• Often stacked in a rack Image from: http://www.stealth.com/industrial_rackmounts_sr1501datasheet.htm
  6. 6. Servers – Concepts & Definitions• Same hardware components as your Personal Computer – Processor, Memory, Pow er Supply, Hard Drive• Often stacked in a rack http://www.daystarinc.com/hosting-facility
  7. 7. Is this a server?Image from: http://www.stealth.com/industrial_rackmounts_sr1501datasheet.htm
  8. 8. Is this a server?Image from: http://mediapool.getthespec.com/media.jpg?m=gBLSSTJ6IbHLuZD1JNnmyw%3D%3D&v=HR
  9. 9. Is this a server?Image from: http://www.maximumpc.com/articles/reviews/hardware
  10. 10. Is this a server? Image from: http://www.phonearena.com/image.php?m=Articles.Images&f=name&id=28259&name=GT-I8520_1.jpg&caption=&title=Image+from+%22UPDATED%3A+Samsung+I8520+is+an+Android+phone+with+built-in+projector%22&kw=&popup=1
  11. 11. Is this a server?
  12. 12. Common Attributes of a Server• Often runs an Operating System geared towards servers.• Primarily accessed remotely – Often “headless” (no monitor)• Runs 24/7, minimize downtime• May be kept in a data center – Superior cooling, increased security, etc.• Redundancy (Power, Disk Storage)• More powerful and expensive
  13. 13. Operating SystemClient PCs Servers• Windows (XP, Vista, 7, 8) • Linux (Red Hat, Suse• Mac OS Enterprise, Ubuntu• Linux Server) (Ubuntu, Mint, openSUS • Windows (Windows E) Server 2003, 2008, 2012) • Non-Linux Unix (BSD, Solaris, AIX)
  14. 14. Remote Access & the Shell• Typically don’t have physical access to the server, must access over a network• Windows is heavily graphical, access using “Remote Desktop” Image from http://www.softsalad.com/software/remote-desktop-control.html
  15. 15. Remote Access & the Shell• Typically don’t have physical access to the server, must access over a network• Windows is heavily graphical, access using “Remote Desktop”• Linux is less graphical, access via a “Shell” Image from http://www.softsalad.com/software/remote-desktop-control.html
  16. 16. Shell Access1. User logs in2. User types command3. Computer executes Shell command and prints output4. User types another command5. …6. User logs off Modified from http://software-carpentry.org/4_0/shell/intro.html
  17. 17. Shell ComparisonWindows (Graphical) Linux (Shell) Image from http://www.dedoimedo.com/computers/windows-7.html
  18. 18. Shell ComparisonWindows (Graphical) Linux (Shell)
  19. 19. Shell ComparisonWindows (Graphical) Linux (Shell)
  20. 20. Shell Access• Slow learning curve• Can often be confusing at first, requires a new way of thinking• Ultimately very powerful and efficient• Three reasons to use: 1. It’s your only choice for remote access on some non- graphical systems 2. Many software tools only offer Command Line interfaces 3. Allows for powerful new combinations of tools Modified from http://software-carpentry.org/4_0/shell/intro.html
  21. 21. Data Centers• Redundant, independent power feeds – Diesel generator backup• Redundant Internet connections• Redundant cooling• 24/7/365 staffing, restricted access
  22. 22. RAIDDisk 1 • “Redundant Array ofDisk 2 Independent Disks” RAID • Store informationDisk 3 Array redundantlyDisk 4 • Support failure of one or more hardDisk 5 drives without losing data
  23. 23. Server Computing Power• Often very expensive machines• Hardware designed to support more resources than a PC – May have dozens or hundreds of GB of RAM – Very expensive powerful processor, or even multiple processors
  24. 24. Outline• Servers• Clusters – Motivation & Concept – Job submission – Example• The Cloud
  25. 25. Example Problem• Group of 10 researchers• Too many concurrent users, runs slowly• Have some very large jobs
  26. 26. Naïve Solution• Buy more independent servers!• Let people connect to whichever server they want• Problems: – Not sure which servers are busiest – Still takes weeks to run big simulations
  27. 27. Clustered Solution• Servers are “nodes” in a cluster• Log in via head node• Head node manages requested jobs – Submits them to “worker” or “slave” nodes – Intelligently calculates available resources on each worker node• Multiple nodes can work on a single task
  28. 28. Job Submission• Prepare a script to be executed (“myjob.sh”) – Include specifications on resources required • (“-l nodes=2:ppn=4”) – Or what queue it should be submitted to • Different queues have different priorities and permissions• Submit that job to the head node (“qsub myjob.sh”)• Head node will begin executing as soon as it has sufficient resources
  29. 29. Clustered Solution
  30. 30. Clustered Solution Job #1 User: User4 Nodes Req’d: 1 Program: align.sh
  31. 31. Clustered SolutionJob #1 User: User4 Nodes Req’d: 1 Program: align.sh
  32. 32. Clustered SolutionJob #1 User: User4 Nodes Req’d: 1 Program: align.sh
  33. 33. Clustered Solution Job #2Job #1 User: User9 User: User4 Nodes Req’d: 1 Nodes Req’d: 1 Program: align.sh Program: simul.sh
  34. 34. Clustered SolutionJob #2 User: User9 Nodes Req’d: 1 Program: simul.shJob #1 User: User4 Nodes Req’d: 1 Program: align.sh
  35. 35. Clustered SolutionJob #2 User: User9 Nodes Req’d: 1 Program: simul.shJob #1 User: User4 Nodes Req’d: 1 Program: align.sh
  36. 36. Clustered SolutionJob #2 User: User9 Nodes Req’d: 1 Program: simul.sh Job #3Job #1 User: User2 User: User4 Nodes Req’d: 1 Nodes Req’d: 2 Program: align.sh Program: splice.sh
  37. 37. Clustered Solution Queued Job #3Job #2 User: User2 User: User9 Nodes Req’d: 2 Nodes Req’d: 1 Program: Program: simul.sh splice.shJob #1 User: User4 Nodes Req’d: 1 Program: align.sh
  38. 38. Clustered Solution Queued Job #3Job #2 User: User2 User: User9 Nodes Req’d: 2 Nodes Req’d: 1 Program: Program: simul.sh splice.shJob #1 User: User4 Nodes Req’d: 1 Program: align.sh
  39. 39. Clustered Solution Queued Job #3 User: User2 Nodes Req’d: 2 Program: splice.sh Job #2Job #1 User: User9 User: User4 Nodes Req’d: 1 Nodes Req’d: 1 Program: simul.sh Program: align.sh
  40. 40. Clustered Solution Queued Job #3 User: User2 Nodes Req’d: 2 Program: splice.shJob #1 User: User4 Nodes Req’d: 1 Program: align.sh
  41. 41. Clustered Solution QueuedJob #3 User: User2 Nodes Req’d: 2 Program: splice.shJob #1 User: User4 Nodes Req’d: 1 Program: align.sh
  42. 42. Clusters• Solve problem of sharing resources• Allow multiple nodes to collaborate on a single job – Programs must be specifically designed to run in this fashion• Can solve very large problems by combining hundreds of nodes together – Global weather forecasting, particle collisions at CERN, etc.
  43. 43. HPC at UT Southwestern• QBRC manages an 18 node cluster on- campus.• Have access to Texas Advanced Computing Center (TACC) at UT Austin – 6,400 node cluster with > 100k cores – Attracts many users, often a queue before your jobs will run.
  44. 44. Outline• Servers• Clusters• The Cloud
  45. 45. Cloud Computing• Vendors with access to massive computing resources began leasing their servers out – Amazon, Microsoft, Google, Rackspace – Charge per hour of use, usually just a few cents.
  46. 46. Cloud Computing - Advantages• No up-front purchase/cost• No hardware to manage• 100 servers in parallel is the same cost as a single server running for 100 hours – Can get parallel jobs done much more quickly
  47. 47. Cloud Computing - Disadvantages• Data must be transferred over the Internet – Can take hours to upload a large sequencing experiment.• Can be more expensive than internal clusters

×