{"title":"对动态数据分布和动态的体系结构支持","authors":"L. Welch","doi":"10.1109/DMCC.1991.633093","DOIUrl":null,"url":null,"abstract":"Software reuse increases the productivity of software engineers, however, the benefits of reuse can be offs'et by poor performance of the softwane products. To avoid this pitfall, the potential inefficiencies of a class of reusable software components are identified and addressed. An architecture providing a model of parallel ezecution that not only speeds up programs, but enc,ourages the development of layered software by increasing parallelism in correspondence to increases in layering, is developed. The model encourages development of highly cohesive, loosely coupled' modules. To improve the effectiveness of the model of parallel e.zecution, static mapping techniques are used in conjunction with dynamic scheduling and dynamic data distribution techniques. The combination of static and dynamic load balancing techniques allows the benefits of each technique to be ezploited while reducing its negative effects. To avoid the expense of dynamically neplicating (cloning) code, or of movin:g code between PES, modules are statically cloned and mapped to PES. Calls are scheduled dynamically and doita are mapped dynamically, since it is impossible to determine before run-time the execution sequence of a program, and bec(o.use these techniques introduce very little overhead at run-time (due to simplicity and hardware implementation). Additionally, the techniques used for scheduling and data distribution are distributed to avoid serialization.","PeriodicalId":313314,"journal":{"name":"The Sixth Distributed Memory Computing Conference, 1991. Proceedings","volume":"130 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"1991-04-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"5","resultStr":"{\"title\":\"Architectural Support for Dynamic Data Distribution and Dynamic\",\"authors\":\"L. Welch\",\"doi\":\"10.1109/DMCC.1991.633093\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Software reuse increases the productivity of software engineers, however, the benefits of reuse can be offs'et by poor performance of the softwane products. To avoid this pitfall, the potential inefficiencies of a class of reusable software components are identified and addressed. An architecture providing a model of parallel ezecution that not only speeds up programs, but enc,ourages the development of layered software by increasing parallelism in correspondence to increases in layering, is developed. The model encourages development of highly cohesive, loosely coupled' modules. To improve the effectiveness of the model of parallel e.zecution, static mapping techniques are used in conjunction with dynamic scheduling and dynamic data distribution techniques. The combination of static and dynamic load balancing techniques allows the benefits of each technique to be ezploited while reducing its negative effects. To avoid the expense of dynamically neplicating (cloning) code, or of movin:g code between PES, modules are statically cloned and mapped to PES. Calls are scheduled dynamically and doita are mapped dynamically, since it is impossible to determine before run-time the execution sequence of a program, and bec(o.use these techniques introduce very little overhead at run-time (due to simplicity and hardware implementation). Additionally, the techniques used for scheduling and data distribution are distributed to avoid serialization.\",\"PeriodicalId\":313314,\"journal\":{\"name\":\"The Sixth Distributed Memory Computing Conference, 1991. Proceedings\",\"volume\":\"130 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"1991-04-28\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"5\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"The Sixth Distributed Memory Computing Conference, 1991. Proceedings\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/DMCC.1991.633093\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"The Sixth Distributed Memory Computing Conference, 1991. Proceedings","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/DMCC.1991.633093","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
Architectural Support for Dynamic Data Distribution and Dynamic
Software reuse increases the productivity of software engineers, however, the benefits of reuse can be offs'et by poor performance of the softwane products. To avoid this pitfall, the potential inefficiencies of a class of reusable software components are identified and addressed. An architecture providing a model of parallel ezecution that not only speeds up programs, but enc,ourages the development of layered software by increasing parallelism in correspondence to increases in layering, is developed. The model encourages development of highly cohesive, loosely coupled' modules. To improve the effectiveness of the model of parallel e.zecution, static mapping techniques are used in conjunction with dynamic scheduling and dynamic data distribution techniques. The combination of static and dynamic load balancing techniques allows the benefits of each technique to be ezploited while reducing its negative effects. To avoid the expense of dynamically neplicating (cloning) code, or of movin:g code between PES, modules are statically cloned and mapped to PES. Calls are scheduled dynamically and doita are mapped dynamically, since it is impossible to determine before run-time the execution sequence of a program, and bec(o.use these techniques introduce very little overhead at run-time (due to simplicity and hardware implementation). Additionally, the techniques used for scheduling and data distribution are distributed to avoid serialization.