{"title":"用于数据分布和分布式内存计算的静态分析","authors":"Raul Junji Nakashima, G. Travieso","doi":"10.5753/wscad.2001.19118","DOIUrl":null,"url":null,"abstract":"Este trabalho descreve técnicas de análise estática de compilação baseadas na álgebra e programação linear que buscam otimizar a distribuição de loops forall e array em programas escritos na linguagem SISAL visando à execução em máquinas paralelas de memória distribuídas. Na fase de alinhamento, buscamos o alinhamento de hiperplanos com o objetivo de tentar encontrar as porções dos diferentes arrays que devem ser distribuídas juntas. A fase de particionamento, que tenta quebrar em partes independentes dados e computações, duas funções afins, a função de decomposição de dados e a função de decomposição de computação são usadas para isso. A última fase, o mapeamento, distribui os elementos de computação nos elementos de processamento usando um conjunto de inequações sobre os limites. Essas técnicas estão sendo implementadas num compilador SISAL, mas podem ser usadas sem mudanças em outras linguagens de associação simples e com a adição de análise de dependências podem ser usadas em linguagens imperativas.","PeriodicalId":355276,"journal":{"name":"Anais do II Workshop em Sistemas Computacionais de Alto Desempenho (WSCAD 2001)","volume":"8 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2001-09-10","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"Análises Estáticas para a Distribuição de Dados e Computações em Memória Distribuída\",\"authors\":\"Raul Junji Nakashima, G. Travieso\",\"doi\":\"10.5753/wscad.2001.19118\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Este trabalho descreve técnicas de análise estática de compilação baseadas na álgebra e programação linear que buscam otimizar a distribuição de loops forall e array em programas escritos na linguagem SISAL visando à execução em máquinas paralelas de memória distribuídas. Na fase de alinhamento, buscamos o alinhamento de hiperplanos com o objetivo de tentar encontrar as porções dos diferentes arrays que devem ser distribuídas juntas. A fase de particionamento, que tenta quebrar em partes independentes dados e computações, duas funções afins, a função de decomposição de dados e a função de decomposição de computação são usadas para isso. A última fase, o mapeamento, distribui os elementos de computação nos elementos de processamento usando um conjunto de inequações sobre os limites. Essas técnicas estão sendo implementadas num compilador SISAL, mas podem ser usadas sem mudanças em outras linguagens de associação simples e com a adição de análise de dependências podem ser usadas em linguagens imperativas.\",\"PeriodicalId\":355276,\"journal\":{\"name\":\"Anais do II Workshop em Sistemas Computacionais de Alto Desempenho (WSCAD 2001)\",\"volume\":\"8 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2001-09-10\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Anais do II Workshop em Sistemas Computacionais de Alto Desempenho (WSCAD 2001)\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.5753/wscad.2001.19118\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"Anais do II Workshop em Sistemas Computacionais de Alto Desempenho (WSCAD 2001)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.5753/wscad.2001.19118","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
Análises Estáticas para a Distribuição de Dados e Computações em Memória Distribuída
Este trabalho descreve técnicas de análise estática de compilação baseadas na álgebra e programação linear que buscam otimizar a distribuição de loops forall e array em programas escritos na linguagem SISAL visando à execução em máquinas paralelas de memória distribuídas. Na fase de alinhamento, buscamos o alinhamento de hiperplanos com o objetivo de tentar encontrar as porções dos diferentes arrays que devem ser distribuídas juntas. A fase de particionamento, que tenta quebrar em partes independentes dados e computações, duas funções afins, a função de decomposição de dados e a função de decomposição de computação são usadas para isso. A última fase, o mapeamento, distribui os elementos de computação nos elementos de processamento usando um conjunto de inequações sobre os limites. Essas técnicas estão sendo implementadas num compilador SISAL, mas podem ser usadas sem mudanças em outras linguagens de associação simples e com a adição de análise de dependências podem ser usadas em linguagens imperativas.