[{"data":1,"prerenderedAt":63},["ShallowReactive",2],{"GET-live-training-course/slug/io-virtualization-on-arm-platforms-{}-{}":3},{"data":4},{"id":5,"name":6,"slug":7,"description":8,"about":9,"training_materials":10,"you_will_learn":11,"prerequisites":12,"is_active":13,"category_id":14,"duration":15,"modified_at":16,"course_outline":17,"supplied_materials":16,"thumbnail":18,"elearning_courses":19,"ebooks":46,"topics":47,"reviews":62,"meta_title":16,"meta_description":16,"meta_keywords":16},716,"IO Virtualization on ARM Platforms","io-virtualization-on-arm-platforms","\u003Cp>Virtualization is one of the hot, exciting areas in the industry today, generating significant revenue, and solving critical problems in data centers and in embedded and mobile markets. However, software virtualization techniques add too much overhead to allow virtualization to be used for some applications. This class will look at those problem applications and the hardware solutions architected by ARM as well as support in standards like PCI Express (PCIe). The course focuses on ARM SoCs that have hardware support for DMA remapping (System MMU - SMMU) and virtual interrupts (GICv3 and GICv4). The course also discusses details of Address Translation Services (ATS), Access Control Services (ACS) and Single-Root IOV (SRIOV) implementations (though not multi-root IOV MRIOV).\u003C/p>\r\n\u003Cp>&nbsp;\u003C/p>\r\n\u003Cp>\u003Cspan style=\"color: rgb(186, 55, 42);\">\u003Cstrong>All of MindShare's classroom and virtual classroom courses can be customized to fit the needs of your group.\u003C/strong>\u003C/span>\u003C/p>","\u003Cp>\u003Cspan style=\"font-size: 18pt;\">\u003Cstrong>Let MindShare Bring \"IO Virtualization on ARM Platforms\" to Life for You\u003C/strong>\u003C/span>\u003C/p>","\u003Cul>\r\n\u003Cli>PDF of course slides\u003C/li>\r\n\u003C/ul>","\u003Cul>\r\n\u003Cli>What virtualization is, and the revenue generating uses for virtualization\u003C/li>\r\n\u003Cli>The major sources of overhead with software-only virtualization techniques\u003C/li>\r\n\u003Cli>How I/O virtualization will use the new hardware assists, to solve these problems\u003C/li>\r\n\u003Cli>ARM SMMU and ARM GICv3/v4\u003C/li>\r\n\u003Cli>DMA remapping (Intermediate Physical to Host Physical as well as Shared Virtual Memory)\u003C/li>\r\n\u003Cli>PCIe Address Translation Services (ATS)\u003C/li>\r\n\u003Cli>PCIe Access Control Services (ACS)\u003C/li>\r\n\u003Cli>Single-Root IOV (SRIOV)\u003C/li>\r\n\u003Cli>Process Address Space IDs (PASIDs)\u003C/li>\r\n\u003C/ul>","\u003Cp>PCI Express architecture background as well as general understanding of PC architecture is recommended.\u003C/p>",true,12,"4 days",null,"\u003Cul>\r\n                \u003Cli>Introduction to Virtualization\u003Cbr>\r\n                \u003Cul>\r\n                    \u003Cli>What is virtualization\u003C/li>\r\n                    \u003Cli>Why is it important\u003C/li>\r\n                    \u003Cli>Software Techniques\u003C/li>\r\n                    \u003Cli>Performance Issues\u003C/li>\r\n                    \u003Cli>PCI Pass-through (DirectPath I/O)\u003C/li>\r\n                \u003C/ul>\r\n                \u003C/li>\r\n                \u003Cli>PCIe Address Translation Services (ATS)\r\n                \u003Cul>\r\n                    \u003Cli>What it is and how it helps\r\n                    \u003Cul>\r\n                        \u003Cli>Performance benefits\u003C/li>\r\n                    \u003C/ul>\r\n                    \u003C/li>\r\n                    \u003Cli>ATS Protocol\r\n                    \u003Cul>\r\n                        \u003Cli>Changes to PCIe packets\u003C/li>\r\n                    \u003C/ul>\r\n                    \u003C/li>\r\n                    \u003Cli>Address Translation Caches (ATCs)\u003C/li>\r\n                \u003C/ul>\r\n                \u003C/li>\r\n                \u003Cli>PCIe Access Control Services (ACS)\r\n                \u003Cul>\r\n                    \u003Cli>What it is and why it's needed\u003C/li>\r\n                \u003C/ul>\r\n                \u003C/li>\r\n                \u003Cli>PCIe Single-Root IO Virtualization (SRIOV)\r\n                \u003Cul>\r\n                    \u003Cli>What it is and how it helps\u003C/li>\r\n                    \u003Cli>Functions vs. Physical Functions (PFs) vs. Virtual Functions (VFs)\u003C/li>\r\n                    \u003Cli>SRIOV Capability Structure (including VF BARs)\u003C/li>\r\n                    \u003Cli>Config space of VFs\u003C/li>\r\n                    \u003Cli>PCIe Alternative Routing ID (ARI)\u003C/li>\r\n                \u003C/ul>\r\n                \u003C/li>\r\n                \u003Cli>ARM SMMU: DMA Remapping\u003Cbr>\r\n                \u003Cul>\r\n                    \u003Cli>What it is and how it helps\u003Cbr>\r\n                    \u003Cul>\r\n                        \u003Cli>Performance benefits\u003C/li>\r\n                        \u003Cli>Security benefits\u003C/li>\r\n                    \u003C/ul>\r\n                    \u003C/li>\r\n                    \u003Cli>Virtual Address (VA) vs. Intermediate Physical Address (IPA) vs. Physical Addresses (PA)\u003C/li>\r\n                    \u003Cli>SMMU functionality and data structures\u003C/li>\r\n                    \u003Cli>Latency issues\u003C/li>\r\n                \u003C/ul>\r\n                \u003C/li>\r\n                \u003Cli>Shared Virtual Memory\r\n                \u003Cul>\r\n                    \u003Cli>What it is and how it helps\u003C/li>\r\n                    \u003Cli>PCIe Process Space IDs (PASIDs)\u003C/li>\r\n                    \u003Cli>ARM SMMU support of PASIDs\u003C/li>\r\n                \u003C/ul>\r\n                \u003C/li>\r\n                \u003Cli>ARM GICv3 / v4: Interrupt Remapping\r\n                \u003Cul>\r\n                    \u003Cli>What it is and why it's needed\r\n                    \u003Cul>\r\n                        \u003Cli>Big security issue\u003C/li>\r\n                        \u003Cli>Virtualization performance improvements\u003C/li>\r\n                    \u003C/ul>\r\n                    \u003C/li>\r\n                    \u003Cli>MSI / MSI-X review (interrupt delivery)\u003C/li>\r\n                    \u003Cli>Shared Peripheral Interrupts (SPIs) vs Locality-specific Peripheral Interrupts (LPIs)\u003C/li>\r\n                    \u003Cli>Interrupt Translation Service (ITS)\r\n                    \u003Cul>\r\n                        \u003Cli>Virtual interrupts\u003C/li>\r\n                    \u003C/ul>\r\n                    \u003C/li>\r\n                \u003C/ul>\r\n                \u003C/li>\r\n            \u003C/ul>","https://mindshare-prod.s3.amazonaws.com/public/live_training_courses/thumbnails/live_training_course_716_thumbnail_1748360195.png",[20],{"id":21,"name":22,"slug":23,"description":24,"whats_included":25,"about":26,"instructor_fullname":27,"instructor_email":28,"equivelent_of":29,"subscription_length":30,"price":31,"price_arbor":31,"course_category_id":32,"elearning_courses":33,"you_will_learn":34,"prerequisites":35,"is_active":13,"modified_at":16,"order":36,"modules_count":37,"video":38},1738,"PC Virtualization eLearning Course","pc-virtualization-elearning-course","\u003Cp>Virtualization is one of the fascinating and complex areas in the PC industry, generating significant revenue, and solving critical problems in the PC data center. Virtualization technology is used across a wide range of platforms, from embedded to data center. This class is to explain what virtualization is, and what IT problems it solves, and also the problems that it does not solve. You will learn how Intel virtualization is implemented, along with the overhead and performance issues with the implementations.\u003C/p>","\u003Ctable border=\"0\" cellspacing=\"0\">\r\n\u003Ctbody>\r\n\u003Ctr valign=\"bottom\">\r\n\u003Ctd style=\"border-right: 1px solid rgb(233, 233, 233);\" align=\"center\" width=\"35%\">\u003Cimg src=\"https://mindshare-prod.s3.amazonaws.com/public/uploaded/vt_modules.png\" alt=\"Modules\" width=\"190\" height=\"135\">\u003C/td>\r\n\u003Ctd style=\"border-right: 1px solid rgb(233, 233, 233);\" align=\"center\" width=\"35%\">\u003Cimg src=\"https://mindshare-prod.s3.amazonaws.com/public/uploaded/vt_slides.png\" alt=\"img\" width=\"175\" height=\"120\">\u003C/td>\r\n\u003Ctd align=\"center\">\u003Cimg src=\"https://mindshare-prod.s3.amazonaws.com/public/uploaded/course_certificate160px.png\" alt=\"Course completion certificate\" width=\"213\" height=\"160\">\u003C/td>\r\n\u003C/tr>\r\n\u003Ctr valign=\"top\">\r\n\u003Ctd style=\"border-right: 1px solid rgb(233, 233, 233);\" align=\"center\">\u003Cstrong>PC Virtualization eLearning modules\u003C/strong>\u003Cbr>(unlimited access for 120 days)\u003C/td>\r\n\u003Ctd style=\"border-right: 1px solid rgb(233, 233, 233);\" align=\"center\">\u003Cstrong>PDF of Course Slides\u003C/strong>\u003Cbr>(yours to keep, does not expire)\u003C/td>\r\n\u003Ctd align=\"center\">\u003Cstrong>Course Completion Certificate\u003C/strong>\u003Cbr>(boost your resume/CV)\u003C/td>\r\n\u003C/tr>\r\n\u003C/tbody>\r\n\u003C/table>","\u003Cp>\u003Cspan style=\"font-size: 18pt;\">\u003Cstrong>Let MindShare Bring \"PC Virtualization\" to Life for You\u003C/strong>\u003C/span>\u003C/p>","Paul Devriendt","paul@mindshare.com",4,120,"995",17,[],"\u003Cul>\r\n\u003Cli>What virtualization is, and the revenue generating uses for virtualization.\u003C/li>\r\n\u003Cli>The theory of virtualization, dating back to the IBM mainframes of the 60s and 70s, and how that mainframe technology is relevant to PC virtualization today.\u003C/li>\r\n\u003Cli>How Intel has enhanced their processors to help implement classical virtualization.\u003C/li>\r\n\u003Cli>How memory and I/O virtualization is achieved today.\u003C/li>\r\n\u003Cli>The major sources of overhead with the virtualization techniques.\u003C/li>\r\n\u003C/ul>","\u003Cp>None.\u003C/p>",0,45,{"id":39,"local_path":40,"file_name":41,"mime":16,"vimeo_uri":42,"duration":36,"thumbnail_filename":43,"local_thumbnail_path":44,"thumbnail_url":45},37744,"storage/app/videos/legacy/previews/","legacy-417348502.mp4","/videos/417348502","PC_Virtualization_eLearning_Course_thumbnail.png","storage/app/public/thumbnails/","https://mindshare-prod.s3.amazonaws.com/public/elearning_courses/thumbnails/PC_Virtualization_eLearning_Course_thumbnail.png",[],[48,55],{"id":49,"course_name":50,"classroom_info":15,"virtual_classroom_info":51,"file_url":52,"course_link":53,"link":16,"file_name":54},206,"IO Virtualization for ARM Platforms","8 half-days","https://mindshare-prod.s3.amazonaws.com/public/live_training_course_topics_pdfs/MindShare_IOV_ARM_Course_Outline.pdf","/live-training-course/io-virtualization-on-arm-platforms","MindShare_IOV_ARM_Course_Outline.pdf",{"id":56,"course_name":57,"classroom_info":15,"virtual_classroom_info":51,"file_url":58,"course_link":59,"link":60,"file_name":61},163,"PC Virtualization","https://mindshare-prod.s3.amazonaws.com/public/live_training_course_topics_pdfs/MindShare_Intel_PC_Virtualization_Agenda.pdf","/live-training-course/pc-virtualization","/elearning-course/pc-virtualization-elearning-course","MindShare_Intel_PC_Virtualization_Agenda.pdf",[16],1793031959102]