1 / 6

Advanced Network Simulation with IRIS: Exploring Topologies and Flow Control

Dive into the world of network simulation with the IRIS framework. This powerful tool allows you to design, instantiate, and explore complex network topologies such as ring and torus configurations. With features like virtual channels, credit-based flow control, and customizable network interfaces, you can simulate communication between terminals and routers effectively. Learn to create your own networks using templates while managing parameters like clock timing and packet simulation length. Ideal for researchers and developers working on multicore systems and network architectures.

uyen
Download Presentation

Advanced Network Simulation with IRIS: Exploring Topologies and Flow Control

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Back-end Timing Models • Core Models • Interconnection Network • Memory System • Coherence Cache • DRAM Controller

  2. The Network Simulator - IRIS • Virtual channels • Ring and torus • Request-reply network • Single-flit and multiflit packets • Credit-based flow control • Must instantiate a network interface • Basic router/switch designed to enable design space exploration • Ease of changing VC & switch allocators, buffering, routing function, selection functions, etc. • Topology generators for Ringand Tori • You can write your own 2

  3. Iris Interface • User creates an Iris network using one of the following: template<typename T> Ring<T>* create_ring(); template<typename T> Torus<T>* create_torus(); • parameters: • Clock& clk – clock for the network • ring_init_params* or torus_init_params* - parameters for the ring or torus • Terminal_to_net_mapping* - object that maps terminal address to network address • SimulatedLen<T>* - object that computes a packet's simulated length • VnetAssign<T>* - object that determines a packet's virtual network • intni_credit_type – type of credit messages between NI and terminal • vector<int>* node_lp – LP assignment of the routers

  4. Iris Interface • NIs and routers are created internally • NIs and routers are registered to the clock internally • NIs can be accessed through get_interface_id(), or get_interfaces() • Each NI can connect to one terminal (e.g., cache) • Router is encapsulated

  5. Iris Network Interface • A template class: • template<typename T> class GenNetworkInterface • T is the type of packets sent to the network • Network packet interface

  6. Outline • Introduction • Execution Model and System Architecture • Multicore Emulator Front-End • Component Models • Cores • Network • Memory System • Building and Running Manifold Simulations • Physical Modeling: Energy Introspector • Some Example Simulators

More Related