《SNIA-SDC23-Banta-Optimizing-Complex-Hierarchical-Memory.pdf》由会员分享,可在线阅读,更多相关《SNIA-SDC23-Banta-Optimizing-Complex-Hierarchical-Memory.pdf(47页珍藏版)》请在三个皮匠报告上搜索。
1、1|2023 SNIA.All Rights Reserved.Virtual ConferenceSeptember 28-29,2021Optimizing Complex Hierarchical Memory Systems Through Simulations Andy BantaStorage Janitor,Magnition Incandybanta2|2023 SNIA.All Rights Reserved.Magnition.io(Consultant)SolidFire(VMware development)DataGravity(Container exploita
2、tion lead)VMware(iSCSI Tech Lead)Sun Microsystems(Initial Fibre Channel development)Patent,early distributed network projects,data acquisitionandybantaAndy Banta3|2023 SNIA.All Rights Reserved.HOW CAN CURRENT TECHNOLOGY ACHIEVETODAYS STORAGE IS UNABLE TO ADAPTLatency controlMulti-tenant thrash remed
3、iationCorrect tier sizingWorkload-awarenessHot working set managementLatency and throughput SLAsMemory capacity planningAS MORE HARDWARE LAYERS ADD COMPLEXITY?Modern compute and storage system use multiple layers interacting in multiple waysThe Challenge4|2023 SNIA.All Rights Reserved.ABOUT MAGNITIO
4、NSTORAGE PERFORMANCE,REINVENTEDAward-Winning,Patented Technology3-time award winner for innovative technology.Peer-Reviewed and Published in Leading JournalsMultiple industry articles published and reviewed.Proven At-Scale,with Production WorkloadsUse customer traces to fully test diverse workloads
5、in real-time.Worlds First Real-Time Data Placement OptimizationPatented technology is a first for the industry.5|2023 SNIA.All Rights Reserved.Stimulating SimulationsOur Approach to Simulations6|2023 SNIA.All Rights Reserved.A different approach to optimization Compose simulations of complex memory
6、and storage Break the simulation into components Allows the components to be assembled like building blocks Provide reasonable but constrained set of variables Run simulations with synthetic data or actual IO traces7|2023 SNIA.All Rights Reserved.Value of simulationsFaster and easier to prototypeMin
7、imal up-front hardware spendGreat opportunities for optimizationsLoads of simulations are done at ASIC levelThe same practices should apply to component and software levelsChoose three1.Lower cost2.Higher speed3.More flexibility8|2023 SNIA.All Rights Reserved.Composable components Provide a framewor
8、k to connect componentsLingua Franca provides thisReactors represent system pieces Library of components ready to use Allows clients to build their own modules Basic set of building blocksCacheMediaWire9|2023 SNIA.All Rights Reserved.Composable components Provide a framework to connect componentsLin
9、gua Franca provides thisReactors represent system pieces Library of ready components for use Allows clients to build their own modules Basic set of building blocksCacheMediaWireCache10|2023 SNIA.All Rights Reserved.Composable components Provide a framework to connect componentsLingua Franca provides
10、 thisReactors represent system pieces Library of ready components for use Allows clients to build their own modules Basic set of building blocksCacheMediaWireCacheMissHitInput11|2023 SNIA.All Rights Reserved.Composable components Provide a framework to connect componentsLingua Franca provides thisRe
11、actors represent system pieces Library of ready components for use Allows clients to build their own modules Basic set of building blocksCacheMediaWireCacheMediaMediaOriginMissHitInput12|2023 SNIA.All Rights Reserved.Composable components Provide a framework to connect componentsLingua Franca provid
12、es thisReactors represent system pieces Library of ready components for use Allows clients to build their own modules Basic set of building blocksCacheMediaWireCacheWireWireWireMediaMediaOriginMissHitInput13|2023 SNIA.All Rights Reserved.Composable components Provide a framework to connect component
13、sLingua Franca provides thisReactors represent system pieces Library of ready components for use Allows clients to build their own modules Basic set of building blocksCacheMediaWireCacheCacheWireWireWireWireWireMediaMediaMediaOriginMissHitInput14|2023 SNIA.All Rights Reserved.Media componentMemory,d
14、isk,cloud storageIntroduce distinct delaysMQSimParallel accessContention delaysQueueingOnly need to simulate delayNot actual data deliveryCacheCacheWireWireWireWireWireMediaMediaMediaOriginMissHitInput15|2023 SNIA.All Rights Reserved.Media componentMemory,disk,cloud storageIntroduce distinct delaysM
15、QSimParallel accessContention delaysQueueingOnly need to simulate delayNot actual data deliveryCacheCacheWireWireWireWireWireDRAMMediaMediaOriginMissHitInput16|2023 SNIA.All Rights Reserved.Media componentMemory,disk,cloud storageIntroduce distinct delaysMQSimParallel accessContention delaysQueueing
16、Only need to simulate delayNot actual data deliveryCacheCacheWireWireWireWireWireDRAMSSDMediaOriginMissHitInput17|2023 SNIA.All Rights Reserved.Media componentMemory,disk,cloud storageIntroduce distinct delaysMQSimParallel accessContention delaysQueueingOnly need to simulate delayNot actual data del
17、iveryCacheCacheWireWireWireWireWireDRAMSSDNetwork StorageOriginMissHitInput18|2023 SNIA.All Rights Reserved.Wire componentMemory bus,disk controller,networkCan multiplex and change form of IO requestEven type of wire can be variableType of memory busHops in network topologyDelays introduced by wire,
18、contention,queueingCacheCacheWireWireWireWireWireDRAMSSDNetwork StorageOriginMissHitInput19|2023 SNIA.All Rights Reserved.Wire componentMemory bus,disk controller,networkCan multiplex and change form of IO requestEven type of wire can be variableType of memory busHops in network topologyDelays intro
19、duced by wire,contention,queueingCacheCacheURLWireWireWireWireDRAMSSDNetwork StorageOriginMissHitInput20|2023 SNIA.All Rights Reserved.Wire componentMemory bus,disk controller,networkCan multiplex and change form of IO requestEven type of wire can be variableType of memory busHops in network topolog
20、yDelays introduced by wire,contention,queueingCacheCacheURLRambusWireWireWireDRAMSSDNetwork StorageOriginMissHitInput21|2023 SNIA.All Rights Reserved.Wire componentMemory bus,disk controller,networkCan multiplex and change form of IO requestEven type of wire can be variableType of memory busHops in
21、network topologyDelays introduced by wire,contention,queueingCacheCacheURLCXLWireWireWireDRAMSSDNetwork StorageOriginMissHitInput22|2023 SNIA.All Rights Reserved.Wire componentMemory bus,disk controller,networkCan multiplex and change form of IO requestEven type of wire can be variableType of memory
22、 busHops in network topologyDelays introduced by wire,contention,queueingCacheCacheURLCXLWirePCI BusWireDRAMSSDNetwork StorageOriginMissHitInput23|2023 SNIA.All Rights Reserved.Wire componentMemory bus,disk controller,networkCan multiplex and change form of IO requestEven type of wire can be variabl
23、eType of memory busHops in network topologyDelays introduced by wire,contention,queueingCacheCacheURLCXLNVMePCI BusWireDRAMSSDNetwork StorageOriginMissHitInput24|2023 SNIA.All Rights Reserved.Wire componentMemory bus,disk controller,networkCan multiplex and change form of IO requestEven type of wire
24、 can be variableType of memory busHops in network topologyDelays introduced by wire,contention,queueingCacheCacheURLCXLNVMePCI BusiSCSIDRAMSSDNetwork StorageOriginMissHitInput25|2023 SNIA.All Rights Reserved.Gas,Grass or CacheNo free ride with hierarchical memory26|2023 SNIA.All Rights Reserved.Cach
25、e component Easily build basics like lookups,allocation,and eviction One(or more)hit path One(or more)miss path Many choices for variability27|2023 SNIA.All Rights Reserved.Cache allocationAnother building blockVariable vs fixed Object or BlockMemory schemes Slab,memalloc,persistent memorySSD fill b
26、uffers28|2023 SNIA.All Rights Reserved.LookupHashing and locating algorithmMiss algorithms Trigger allocation or eviction Trigger speculative fill Pending missesAgeing Dependent on evictionElement invalidation29|2023 SNIA.All Rights Reserved.EvictionsWho to evictCulling invalidationsSSD eviction30|2
27、023 SNIA.All Rights Reserved.Duplicity is trickyTwo-tier cache issues31|2023 SNIA.All Rights Reserved.Multi-layer cache complexityAll of these variables become a huge matrix with multiple layersCache algorithmsMedia typesInterconnect typeShared vs distributedCacheCacheWireWireWireWireWireMediaMediaM
28、ediaOriginMissHitInput32|2023 SNIA.All Rights Reserved.Simulation SummationModeling and collecting results for a two-layer cache33|2023 SNIA.All Rights Reserved.GUI demoShow the graphical representation of the two case configs Video to be added34|2023 SNIA.All Rights Reserved.UI demoCache drilldown3
29、5|2023 SNIA.All Rights Reserved.Simulation code UI generated from code Code simulates component36|2023 SNIA.All Rights Reserved.Workloads matterNo artificial workloadsContent deliveryMultiple sources(Need a CDN trace,not a syscall trace)37|2023 SNIA.All Rights Reserved.Matrix of resultsNumber of PoP
30、sDifferent L1 vs L2 algorithms38|2023 SNIA.All Rights Reserved.Matrix of resultsNumber of PoPsDifferent L1 vs L2 algorithms39|2023 SNIA.All Rights Reserved.Heat mapAbility to compare sets of results40|2023 SNIA.All Rights Reserved.Solving the Halting ProblemWrap up and conclusions41|2023 SNIA.All Ri
31、ghts Reserved.As an example,a current customer has achieved the following measurable outcomes with Magnition:Experiments per day per engineer:Without Magnition:2 With Magnition:50,000+Parameter variations tested before prod release:Without Magnition:50 With Magnition:1,000,000+Workload performance i
32、mprovement using our products to find optimal out-of-the-box settings:10-50%+RESULTS WITH MAGNITIONPROVEN IN MARKET TODAY42|2023 SNIA.All Rights Reserved.Today I Learned1.Complex systems can be modularized rapidly into simulated components2.Real-world problems can be analyzed efficiently using simul
33、ations3.Modern simulators allow faster and more thorough cost and performance analysis than direct experimentation43|2023 SNIA.All Rights Reserved.Please take a moment to rate this session.Your feedback is important to us.44|2021 Storage Developer Conference.Insert Company Name Here.All Rights Reserved.Section TitleSection Subtitle45|2023 SNIA.All Rights Reserved.Section TitleSection Subtitle46|2023 SNIA.All Rights Reserved.Light Slide TitleBullets 1 Bullets 2 Bullets 3 Bullets 4 Bullets 547|2023 SNIA.All Rights Reserved.Dark Slide TitleBullets 1 Bullets 2 Bullets 3 Bullets 4 Bullets 5