{"title":"领域流和流架构","authors":"E. T. L. Omtzigt","doi":"10.1109/ASAP.1990.145479","DOIUrl":null,"url":null,"abstract":"The author introduces the main ideas of a system compiler for affine dependence algorithm. The first idea is a streaming architecture, which is a machine model for the compiler that reduces control overhead in comparison with an ensemble of von Neumann architectures. Such a streaming architecture is a dedicated architecture programmed with an incremental array instruction to be able to run any instance of the problem. The second idea is the domain flow model, which is a program representation that captures the communication of the algorithm. The structure of the compiler reflects the division between synthesis and code generation. A general front-end generates a domain flow graph. Both synthesis and code generation phases work off this data structure. However, each phase has its own back-end. For the synthesis phase the back-end is a design critic combined with an expert system which makes decision about what to do next to satisfy the design goals. For the code generation phase the back-end iterates through different partitioning and code generation strategies.<<ETX>>","PeriodicalId":438078,"journal":{"name":"[1990] Proceedings of the International Conference on Application Specific Array Processors","volume":"17 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"1990-09-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"5","resultStr":"{\"title\":\"Domain flow and streaming architectures\",\"authors\":\"E. T. L. Omtzigt\",\"doi\":\"10.1109/ASAP.1990.145479\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"The author introduces the main ideas of a system compiler for affine dependence algorithm. The first idea is a streaming architecture, which is a machine model for the compiler that reduces control overhead in comparison with an ensemble of von Neumann architectures. Such a streaming architecture is a dedicated architecture programmed with an incremental array instruction to be able to run any instance of the problem. The second idea is the domain flow model, which is a program representation that captures the communication of the algorithm. The structure of the compiler reflects the division between synthesis and code generation. A general front-end generates a domain flow graph. Both synthesis and code generation phases work off this data structure. However, each phase has its own back-end. For the synthesis phase the back-end is a design critic combined with an expert system which makes decision about what to do next to satisfy the design goals. For the code generation phase the back-end iterates through different partitioning and code generation strategies.<<ETX>>\",\"PeriodicalId\":438078,\"journal\":{\"name\":\"[1990] Proceedings of the International Conference on Application Specific Array Processors\",\"volume\":\"17 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"1990-09-05\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"5\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"[1990] Proceedings of the International Conference on Application Specific Array Processors\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/ASAP.1990.145479\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"[1990] Proceedings of the International Conference on Application Specific Array Processors","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ASAP.1990.145479","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
The author introduces the main ideas of a system compiler for affine dependence algorithm. The first idea is a streaming architecture, which is a machine model for the compiler that reduces control overhead in comparison with an ensemble of von Neumann architectures. Such a streaming architecture is a dedicated architecture programmed with an incremental array instruction to be able to run any instance of the problem. The second idea is the domain flow model, which is a program representation that captures the communication of the algorithm. The structure of the compiler reflects the division between synthesis and code generation. A general front-end generates a domain flow graph. Both synthesis and code generation phases work off this data structure. However, each phase has its own back-end. For the synthesis phase the back-end is a design critic combined with an expert system which makes decision about what to do next to satisfy the design goals. For the code generation phase the back-end iterates through different partitioning and code generation strategies.<>