Skip to content

Latest commit

 

History

History

scheduler

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
This is the original version of list scheduling algorithm. It has scheudling, configuration, verification mixed together.
As a result, it is really slow especially when the DFG has larger scale. Meanwhile, since there are quite a few simplification 
in the scheduling, it can achive trifle acceleration. In this case, I have both issues that have been done and issues that will
be done in next step listed here for future reference.

Strategies that have been done:
1. Parameterized DFG generation
2. DFG vertex priority allocation
3. Physical shortest path selection
4. Approximately Shortest transmission path selection
5. Scheduling operation first and then PE
6. Component activity record
7. Component content record
8. Scheduling correctness verification
9. Arbitrary CGRA topology
10. Single port data memory in PE(write and read share a single port.)
11. Single PE output port
12. Activity, content and execution result check
13. Try to reduce overhead of PE state copy and resume by limiting the time scale and node scale 
14. Choose PE based on buffer utilization which reduce the scheduling time dramatically
15. Provide input port /output port /dsp pipeline /data memory utilization of the scheduling
16. All the input operands are stored in multipe PEs
17. Store and then Forward transmission mode instead of directly moving from source to destination
18. Add memory port to allow write and read at the same time
19. Add multiple read port to data meory in PE
20. Decide running bottlneck of the program
21. Add PE selection filter to the PEselection to reduce iteration times

Strategies that will be done:
2. More read/write ports for data memeory in PE
5. Separation of scheduling and verification
6. Best topology search
7. Multiple interconnection instead of broadcast/1 to M mux in PE port
8. Try to use registers in PE to optimize data transmission using component trace
9. PE scheduling and then operation scheduling
11.Leave multiple copy of a single data in different PEs which help to reduce communication time.