CS8803J: High Performance Communication
Class Notes
3.18.2002
Topic: Hybrid Deposit
- Outline (3 take-home points, 2 "freebies")
- Argument
- Implementation
- IXP Implementation
- (Evaluation)
- (Final Ramblings)
Various low level approaches
- Argument
- Hamlyn: all sender controlled
- pros
- efficient: avoids interrupts
- separate data transmission from control
- cons
- isolation: sender must have intimate knowledge of recipient
- ok for high-performance parallel environment
- unrealistic for distributed environment
- hard to implement abstractions like multi-sender queues
- AM: all recipient controlled
- powerful, complex model
- difficult to implement queues, etc. with
- Hybrid Deposit point of view
- "middle road" approach
- Don't want everything at sender/receiver
Approach characteristic comparsion
- Implementation
"Playpen" diagram
- "Playpen" communication
- Send/Recv. area pinned in physical mem.
- communication over connection
- connection ID
- matches sender area on send side, receiver area on recv.
- no scatter to multiple
- no gather from multiple
- Messages
Message format
- consist of data payload, operand, opcode, and header
- Operand, Opcode
- Receiver executes ONE instruction from message
- Operand used if needed
- Instruction set (from Fig. 2 in paper)
- address generation
- simple arithmetic
- interrupt generation
- Hardware Implementation
- Fixed instruction set, could implement in HW
- TLB in HW as well
- Protection mechanism
- Limit send/recv. area to "DMZ" memory
- Use OS virtual address mechanism
- How accomplished in AM?
- "Pure" AM
- message includes instruction pointer to arbitrary code: no protection
- modified AM
- message includes code table index to set of registered handlers
- can't execute arbitrary code, only registered
- Protection in Hybrid Deposit
- "Pure" Hybrid Deposit
- raw instructions == no protection
- modified Hybrid Deposit
- use code table index as above
- IXP Implementaiton
- Small operations
- executed by uEngine
- HD Cells
- wrap in Ethernet frame
- Could use ACE framework
- Limited State
- IXP SRAM
- Send/Recv. Areas
- host-DRAM
- IXP SDRAM (?)
- Evaluation
- How do we evaluate these systems? Relative performance/merits/failings?
- Method
- Implement
- Implement large body of SW that uses it
- Compare to large body of SW using different method
- In other words: very hard!
- Final Ramblings
- Fragmentation
- Hamlyn/HD more suitable for message fragmentation than AM
- Other Hybrid ideas/extensions
- Multiple packet formats
- Extended operations
- Fragmentation support
- Data transformation operations
- AM enhancements
- 3 "Fixed" standardized handlers could make AM more "remote mem like"
- read, write, queue
Last modified: Fri Mar 22 16:04:39 EST 2002
daniel j. rocco