High Performance Computer Architecture

بواسطة: Udacity

Overview

This class is offered as CS6290 at Georgia Tech where it is a part of the Online Masters Degree (OMS). Taking this course here will not earn credit towards the OMS degree.

The course begins with a lesson on performance measurement, which leads to a discussion on the necessity of performance improvement.

Pipelining, the first level of performance refinement, is reviewed. The weaknesses of pipelining will be exposed and explored, and various solutions to these issues will be studied. The student will learn hardware, software, and compiler based solutions to these issues.

Syllabus

  • Introduction and Trends
    • Computer Architecture & Tech Trends,Moore's Law,Processor Speed, Cost, Power,Power Consumption,Fabrication Yield
  • Performance Metrics and Evaluation
    • Measuring Performance,Benchmarks Standards,Iron Law of Performance,Amdahl's Law,Lhadma's Law
  • Pipelining Review
    • Pipeline CPI,Processor Pipeline Stalls,Data Dependencies,Pipelining Outro
  • Branches
    • Branch Prediction,Direction Predictor,Hierarchical Predictors,PShare
  • Predication
    • If Conversion,Conditional Move,MOVc Summary
  • Instruction Level Parallelism (ILP)
    • ILP Intro,RAW Dependencies,WAW Dependencies,Duplicating Register Values,Instruction Level Parallelism (ILP)
  • Instruction Scheduling
    • Improving IPC,Tomasulo's Algorithm,Load and Store Instructions
  • ReOrder Buffer
    • Exceptions in Out Of Order Execution,Branch Misprediction,Hardware Organization with ROB
  • Memory Ordering
    • Memory Access Ordering,When Does Memory Write Happen,Out of Order Load Store Execution,Store to Load Forwarding,LSQ, ROB, and RS
  • Memory
    • How Memory Works,One Memory Bit SRAM,One Memory Bit DRAM,Fast Page Mode,Connecting DRAM To The Processor
  • Multi-Processing
    • Flynn's Taxonomy of Parallel Machines,Multiprocessor Needs Parallel Programs!,Centralized Shared Memory,Distributed Shared Memory,Message Passing Vs Shared Memory,Shared Memory Hardware,SMT Hardware Changes,SMT and Cache Performance

Taught by

Milos Prvulovic

High Performance Computer Architecture
الذهاب الي الدورة

High Performance Computer Architecture

بواسطة: Udacity

  • Udacity
  • مجانية
  • الإنجليزية
  • متاح شهادة
  • متاح في أي وقت
  • advanced
  • N/A
8.1.2PHP Version186msRequest Duration2MBMemory UsageGET ar/الدورات/{slug}Route
    • Booting (116ms)
    • Application (69.72ms)
    • 1 x Booting (62.29%)
      115.89ms
      1 x Application (37.47%)
      69.72ms
      14 templates were rendered
      • public.courses.show (resources/views/public/courses/show.blade.php)3bladefile
        Params
        0
        course
        1
        links
        2
        config
      • public.courses.partials.breadcrumbs (resources/views/public/courses/partials/breadcrumbs.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.courses.partials.heading (resources/views/public/courses/partials/heading.blade.php)7bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        classes
      • public.courses.partials.details (resources/views/public/courses/partials/details.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.courses.partials.breadcrumbs (resources/views/public/courses/partials/breadcrumbs.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.courses.partials.heading (resources/views/public/courses/partials/heading.blade.php)7bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        classes
      • public.layouts.main (resources/views/public/layouts/main.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.layouts.partials.meta (resources/views/public/layouts/partials/meta.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.layouts.partials.navbar (resources/views/public/layouts/partials/navbar.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.auth.profile.partials.links (resources/views/public/auth/profile/partials/links.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.auth.profile.partials.link (resources/views/public/auth/profile/partials/link.blade.php)8bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        route
        7
        title
      • public.auth.profile.partials.link (resources/views/public/auth/profile/partials/link.blade.php)8bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        route
        7
        title
      • public.auth.profile.partials.link (resources/views/public/auth/profile/partials/link.blade.php)8bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        route
        7
        title
      • public.layouts.partials.flash-session (resources/views/public/layouts/partials/flash-session.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      uri
      GET ar/الدورات/{slug}
      middleware
      web, localize:ar
      controller
      App\Http\Controllers\CourseController@show
      as
      ar.courses.show
      namespace
      prefix
      /ar
      where
      file
      app/Http/Controllers/CourseController.php:17-35
      7 statements were executed3.98ms
      • select * from `courses` where `slug_ar` = 'high-performance-computer-architecture' limit 1
        2.61ms/app/Http/Controllers/CourseController.php:20corspedia
        Metadata
        Bindings
        • 0. high-performance-computer-architecture
        Backtrace
        • 17. /app/Http/Controllers/CourseController.php:20
        • 18. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 19. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 20. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • update `courses` set `visitors` = `visitors` + 1, `courses`.`updated_at` = '2025-04-10 10:57:01' where `id` = 623
        450μs/app/Http/Controllers/CourseController.php:21corspedia
        Metadata
        Bindings
        • 0. 2025-04-10 10:57:01
        • 1. 623
        Backtrace
        • 17. /app/Http/Controllers/CourseController.php:21
        • 18. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 19. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 20. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select `id`, `name_en`, `name_ar`, `topic_id`, `slug_en`, `slug_ar` from `subjects` where `subjects`.`id` in (1)
        190μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 20. /app/Http/Controllers/CourseController.php:23
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 22. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 23. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 24. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select `id`, `name_en`, `name_ar`, `slug_en`, `slug_ar` from `topics` where `topics`.`id` in (1)
        150μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 25. /app/Http/Controllers/CourseController.php:23
        • 26. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 27. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 28. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 29. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select * from `institutions` where `institutions`.`id` in (22) and `institutions`.`deleted_at` is null
        200μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 20. /app/Http/Controllers/CourseController.php:23
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 22. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 23. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 24. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select * from `providers` where `providers`.`id` in (6) and `providers`.`deleted_at` is null
        180μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 20. /app/Http/Controllers/CourseController.php:23
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 22. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 23. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 24. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select * from `html_files` where `html_files`.`id` = 617 limit 1
        200μs/app/Models/Course.php:84corspedia
        Metadata
        Bindings
        • 0. 617
        Backtrace
        • 21. /app/Models/Course.php:84
        • 28. view::public.courses.show:29
        • 30. /vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php:125
        • 31. /vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php:58
        • 32. /vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php:72
      App\Models\HtmlFile
      1
      App\Models\Provider
      1
      App\Models\Institution
      1
      App\Models\Topic
      1
      App\Models\Subject
      1
      App\Models\Course
      1
        _token
        m4XARSAmiJunufVY0vXvZysX55U5WZKmZ1PmA0H3
        locale
        ar
        _previous
        array:1 [ "url" => "https://www.corspedia.com/ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/high-p...
        _flash
        array:2 [ "old" => [] "new" => [] ]
        PHPDEBUGBAR_STACK_DATA
        []
        path_info
        /ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/high-performance-computer-architecture
        status_code
        200
        
        status_text
        OK
        format
        html
        content_type
        text/html; charset=UTF-8
        request_query
        []
        
        request_request
        []
        
        request_headers
        0 of 0
        array:24 [ "cf-ipcountry" => array:1 [ 0 => "US" ] "cf-connecting-ip" => array:1 [ 0 => "3.138.183.117" ] "cdn-loop" => array:1 [ 0 => "cloudflare; loops=1" ] "x-forwarded-proto" => array:1 [ 0 => "https" ] "cf-visitor" => array:1 [ 0 => "{"scheme":"https"}" ] "sec-fetch-site" => array:1 [ 0 => "none" ] "accept" => array:1 [ 0 => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7" ] "user-agent" => array:1 [ 0 => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)" ] "upgrade-insecure-requests" => array:1 [ 0 => "1" ] "sec-ch-ua-platform" => array:1 [ 0 => ""Windows"" ] "sec-ch-ua-mobile" => array:1 [ 0 => "?0" ] "sec-ch-ua" => array:1 [ 0 => ""HeadlessChrome";v="129", "Not=A?Brand";v="8", "Chromium";v="129"" ] "cache-control" => array:1 [ 0 => "no-cache" ] "pragma" => array:1 [ 0 => "no-cache" ] "sec-fetch-dest" => array:1 [ 0 => "document" ] "cf-ray" => array:1 [ 0 => "92e1b88dcd482413-IAD" ] "accept-encoding" => array:1 [ 0 => "gzip, br" ] "priority" => array:1 [ 0 => "u=0, i" ] "sec-fetch-user" => array:1 [ 0 => "?1" ] "sec-fetch-mode" => array:1 [ 0 => "navigate" ] "x-forwarded-for" => array:1 [ 0 => "3.138.183.117" ] "host" => array:1 [ 0 => "www.corspedia.com" ] "content-length" => array:1 [ 0 => "" ] "content-type" => array:1 [ 0 => "" ] ]
        request_server
        0 of 0
        array:50 [ "USER" => "www-data" "HOME" => "/var/www" "HTTP_CF_IPCOUNTRY" => "US" "HTTP_CF_CONNECTING_IP" => "3.138.183.117" "HTTP_CDN_LOOP" => "cloudflare; loops=1" "HTTP_X_FORWARDED_PROTO" => "https" "HTTP_CF_VISITOR" => "{"scheme":"https"}" "HTTP_SEC_FETCH_SITE" => "none" "HTTP_ACCEPT" => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7" "HTTP_USER_AGENT" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)" "HTTP_UPGRADE_INSECURE_REQUESTS" => "1" "HTTP_SEC_CH_UA_PLATFORM" => ""Windows"" "HTTP_SEC_CH_UA_MOBILE" => "?0" "HTTP_SEC_CH_UA" => ""HeadlessChrome";v="129", "Not=A?Brand";v="8", "Chromium";v="129"" "HTTP_CACHE_CONTROL" => "no-cache" "HTTP_PRAGMA" => "no-cache" "HTTP_SEC_FETCH_DEST" => "document" "HTTP_CF_RAY" => "92e1b88dcd482413-IAD" "HTTP_ACCEPT_ENCODING" => "gzip, br" "HTTP_PRIORITY" => "u=0, i" "HTTP_SEC_FETCH_USER" => "?1" "HTTP_SEC_FETCH_MODE" => "navigate" "HTTP_X_FORWARDED_FOR" => "3.138.183.117" "HTTP_HOST" => "www.corspedia.com" "REDIRECT_STATUS" => "200" "SERVER_NAME" => "corspedia.com" "SERVER_PORT" => "443" "SERVER_ADDR" => "141.95.147.152" "REMOTE_USER" => "" "REMOTE_PORT" => "11672" "REMOTE_ADDR" => "172.71.223.119" "SERVER_SOFTWARE" => "nginx/1.18.0" "GATEWAY_INTERFACE" => "CGI/1.1" "HTTPS" => "on" "REQUEST_SCHEME" => "https" "SERVER_PROTOCOL" => "HTTP/2.0" "DOCUMENT_ROOT" => "/var/www/corspedia/public" "DOCUMENT_URI" => "/index.php" "REQUEST_URI" => "/ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/high-performance-computer-architecture" "SCRIPT_NAME" => "/index.php" "CONTENT_LENGTH" => "" "CONTENT_TYPE" => "" "REQUEST_METHOD" => "GET" "QUERY_STRING" => "" "SCRIPT_FILENAME" => "/var/www/corspedia/public/index.php" "PATH_INFO" => "" "FCGI_ROLE" => "RESPONDER" "PHP_SELF" => "/index.php" "REQUEST_TIME_FLOAT" => 1744282621.3178 "REQUEST_TIME" => 1744282621 ]
        request_cookies
        []
        
        response_headers
        0 of 0
        array:5 [ "content-type" => array:1 [ 0 => "text/html; charset=UTF-8" ] "cache-control" => array:1 [ 0 => "no-cache, private" ] "date" => array:1 [ 0 => "Thu, 10 Apr 2025 10:57:01 GMT" ] "set-cookie" => array:2 [ 0 => "XSRF-TOKEN=eyJpdiI6Imp3QXNMK0RBcC9pclVqQUt1WG5QeEE9PSIsInZhbHVlIjoidHY0ZUpJVWNGYjRsMjIrbDMwUDhTZWVYNEVpRitrd2hFOXY2YlYvbzh3YjNKSW5YTng0K0NLZXhXNGFWSmV3cHA0TzhndS9vdjZEN2piaDlKaU14MXArMzhTdVRGYkZSNDczL05qMStyWnF4M1hzazlSc2U3clB3bGRWdG1PUi8iLCJtYWMiOiI5ZGU3N2Y1ZTMyNTZiZDBlZmI0NmVkMjFlOTVjZjQwMzM1Y2VjNmIwOWViNGEyOThkODU0ODNmMjg5ODgwNmVkIiwidGFnIjoiIn0%3D; expires=Thu, 10 Apr 2025 12:57:01 GMT; Max-Age=7200; path=/; samesite=laxXSRF-TOKEN=eyJpdiI6Imp3QXNMK0RBcC9pclVqQUt1WG5QeEE9PSIsInZhbHVlIjoidHY0ZUpJVWNGYjRsMjIrbDMwUDhTZWVYNEVpRitrd2hFOXY2YlYvbzh3YjNKSW5YTng0K0NLZXhXNGFWSmV3cHA0Tzhnd" 1 => "laravel_session=eyJpdiI6IjVUL3dwS3FZZEVRNFNOcm5ZU25nb0E9PSIsInZhbHVlIjoid2hGSksvZGRWNkhSdzM1bTBzOXY2Zk9yWmNqVEFUbFNNM055cWFBWE1JdXR5S1ZBejZZSC80L1NSNEFqN3F0VWMyNVRvdllnMmdKWGV2OC9sQzNxVVQwZ3k0czBVck9WZ0Y0U1JFN1JJTnhUMWY2RFRoakdCaWp5YVdIendOYmkiLCJtYWMiOiJlOWE3MjM1NDJiMmEwNjhmZmZmOWQzYTlmOWIxN2Q3ZjhmZWRjNGEwYjg4YzljOWEzOGNiYThiM2NmMmQwOGQ5IiwidGFnIjoiIn0%3D; expires=Thu, 10 Apr 2025 12:57:01 GMT; Max-Age=7200; path=/; httponly; samesite=laxlaravel_session=eyJpdiI6IjVUL3dwS3FZZEVRNFNOcm5ZU25nb0E9PSIsInZhbHVlIjoid2hGSksvZGRWNkhSdzM1bTBzOXY2Zk9yWmNqVEFUbFNNM055cWFBWE1JdXR5S1ZBejZZSC80L1NSNEFqN3F0VWMy" ] "Set-Cookie" => array:2 [ 0 => "XSRF-TOKEN=eyJpdiI6Imp3QXNMK0RBcC9pclVqQUt1WG5QeEE9PSIsInZhbHVlIjoidHY0ZUpJVWNGYjRsMjIrbDMwUDhTZWVYNEVpRitrd2hFOXY2YlYvbzh3YjNKSW5YTng0K0NLZXhXNGFWSmV3cHA0TzhndS9vdjZEN2piaDlKaU14MXArMzhTdVRGYkZSNDczL05qMStyWnF4M1hzazlSc2U3clB3bGRWdG1PUi8iLCJtYWMiOiI5ZGU3N2Y1ZTMyNTZiZDBlZmI0NmVkMjFlOTVjZjQwMzM1Y2VjNmIwOWViNGEyOThkODU0ODNmMjg5ODgwNmVkIiwidGFnIjoiIn0%3D; expires=Thu, 10-Apr-2025 12:57:01 GMT; path=/XSRF-TOKEN=eyJpdiI6Imp3QXNMK0RBcC9pclVqQUt1WG5QeEE9PSIsInZhbHVlIjoidHY0ZUpJVWNGYjRsMjIrbDMwUDhTZWVYNEVpRitrd2hFOXY2YlYvbzh3YjNKSW5YTng0K0NLZXhXNGFWSmV3cHA0Tzhnd" 1 => "laravel_session=eyJpdiI6IjVUL3dwS3FZZEVRNFNOcm5ZU25nb0E9PSIsInZhbHVlIjoid2hGSksvZGRWNkhSdzM1bTBzOXY2Zk9yWmNqVEFUbFNNM055cWFBWE1JdXR5S1ZBejZZSC80L1NSNEFqN3F0VWMyNVRvdllnMmdKWGV2OC9sQzNxVVQwZ3k0czBVck9WZ0Y0U1JFN1JJTnhUMWY2RFRoakdCaWp5YVdIendOYmkiLCJtYWMiOiJlOWE3MjM1NDJiMmEwNjhmZmZmOWQzYTlmOWIxN2Q3ZjhmZWRjNGEwYjg4YzljOWEzOGNiYThiM2NmMmQwOGQ5IiwidGFnIjoiIn0%3D; expires=Thu, 10-Apr-2025 12:57:01 GMT; path=/; httponlylaravel_session=eyJpdiI6IjVUL3dwS3FZZEVRNFNOcm5ZU25nb0E9PSIsInZhbHVlIjoid2hGSksvZGRWNkhSdzM1bTBzOXY2Zk9yWmNqVEFUbFNNM055cWFBWE1JdXR5S1ZBejZZSC80L1NSNEFqN3F0VWMy" ] ]
        session_attributes
        0 of 0
        array:5 [ "_token" => "m4XARSAmiJunufVY0vXvZysX55U5WZKmZ1PmA0H3" "locale" => "ar" "_previous" => array:1 [ "url" => "https://www.corspedia.com/ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/high-performance-computer-architecture" ] "_flash" => array:2 [ "old" => [] "new" => [] ] "PHPDEBUGBAR_STACK_DATA" => [] ]