• Refine Query
  • Source
  • Publication year
  • to
  • Language
  • 40
  • 22
  • 6
  • 6
  • 6
  • 6
  • 6
  • 6
  • 6
  • 2
  • 2
  • 2
  • 1
  • 1
  • Tagged with
  • 88
  • 72
  • 70
  • 52
  • 26
  • 15
  • 14
  • 13
  • 13
  • 10
  • 8
  • 8
  • 7
  • 7
  • 7
  • About
  • The Global ETD Search service is a free service for researchers to find electronic theses and dissertations. This service is provided by the Networked Digital Library of Theses and Dissertations.
    Our metadata is collected from universities around the world. If you manage a university/consortium/country archive and want to be added, details can be found on the NDLTD website.
71

Representações internas e geração de codigos no compilador redirecionavel Xingo / Internal representation and code generation in the Xingo retargetable compiler

Felicio, Cristiano Lino 28 February 2005 (has links)
Orientadores: Paulo Cesar Centoducatte, Guido Costa Souza de Araujo / Dissertação (mestrado) - Universidade Estadual de Campinas, Instituto de Computação / Made available in DSpace on 2018-08-04T08:52:36Z (GMT). No. of bitstreams: 1 Felicio_CristianoLino_M.pdf: 971885 bytes, checksum: 8ba5bf45f0d0284fcc7671ce0be406f7 (MD5) Previous issue date: 2005 / Resumo: Devido ao aumento da complexidade dos novos processadores, especialmente processadores DSPs, a capacidade dos compiladores de gerar um código altamente otimizado para as novas arquiteturas de computadores é cada vez mais desafiador. O compilador Xingó tem como objetivos possibilitar pesquisas em otimização e geração de código para novas arquiteturas. Para permitir tais pesquisas, é necessário que o compilador possua uma infra-estrutura capaz de representar, de uma maneira simples e correta, o código nas diversas fases de compilação. Este trabalho apresenta as principais representações de programa do compilador Xingó, bem como os módulos que fazem a tradução de um programa, em uma representação origem, para um programa em uma representação destino (intermediária ou final). Estes móulos compõem o front-end do compilador, que leva à Representação Intermediária Xingó, e parte do back-end, com destaque para a Infra-Estrutura de Geração de Código do Xingó. A Representação Intermediária do Xingó é de fácil manipulação, independente de máquina e apresenta uma sintaxe muito próxima à da linguagem C, por isso tem permitido otimizações independente de máaquina e pode ser traduzida em código C compilável. Já a Infra-Estrutura de Geração de Código apresenta facilidades no desenvolvimento de novos geradores de código, principalmente porque os detalhes da máquina alvo são externos ao compilador, sendo incluídos através de parâmetros configuráeis e módulos bem definidos. Os testes realizados até o presente momento validam parte da Infra-Estrutura de Geração de Código e têm demonstrado uma boa qualidade do Código Intermediário Xingó. Os testes mostram que o Código Intermediário estão sendo corretamente representado para todos os programas do benchmark NullStone (6611 programas) e para uma quantidade razoável de programas dos benchmarks MediaBench e SPEC. Os resultados alcançados até o momento trazem novas oportunidades em pesquisas na área de compiladores, especialmente otimização e geração de código / Abstract: Due to the increasing complexity of the new processors, mainly DSPs processors, the capacity of generating highly optimized code for the new computer architectures by the compilers is increasingly motivating. The Xingó compiler has as goal allow research in code optimization and code generation for new architectures. In order to enable such researches, is necessary to the compiler to provide an infrastructure capable of representing, in an easy and correct form, the code in the several compiling phases. This work presents the main program representations of the Xingó compiler, and the modules that perform the conversion of a program, in a base representation, to a program in a destination representation (intermediate or ultimate). These modules constitute the front-end of the compiler, that generates the Xingó Intermediate Representation, and share of the back-end, with highlight to the Xingó Code Generation Infrastructure. The Xingó Intermediate Representation is easy to use, it is machine independent and has a very approximate syntax of the C language, thereby it has enabled to perform machine independent optimizations and is able to be converted to C Code. Upon the Code Generation Infrastructure, it provides facilities to development of new code generators, mainly because the details of the target machine are outside to the compiler, been included across configurable parameters and well-defined modules.The tests completed up to now validate piece of the Code Generation Infrastructure and reveal good quality of the Xingó Intermediate Code. The testes show that the Intermediate Code is been correctly generated to any programs of the NullStone benchmark (6611 programs) and also to a reasonable quantity of programs of the MediaBench and SPEC benchmarks. The test results acquired up to now conduce to new opportunities for researches on areas such as optimization and code generation / Mestrado / Ciência da Computação / Mestre em Ciência da Computação
72

A compiler for the LMT music transcription language/

Adler, Stuart Philip January 1974 (has links)
No description available.
73

Area efficient PLA's for the recognition of regular expression languages

Chandrasekhar, Muthyala. January 1985 (has links)
No description available.
74

Aircraft position integrity for Differential Satellite-based Navigation in the presence of both bias and noise errors

Suddapalli, Rajesh January 2004 (has links)
No description available.
75

A COMPILER FOR COMPUTER HARDWARE EXPRESSED IN MODIFIED APL

Gentry, Michael Lee, 1942- January 1971 (has links)
No description available.
76

2D-VLIW : uma arquitetura de processador baseada na geometria da computação / 2D-VLIW : a processor architecture based on the geometry of the computation

Santos, Ricardo Ribeiro dos 07 October 2007 (has links)
Orientadores: Rodolfo Jardim de Azevedo, Guido Costa Souza de Araujo / Tese (doutorado) - Universidade Estadual de Campinas, Instituto de Computação / Made available in DSpace on 2018-08-08T21:29:56Z (GMT). No. of bitstreams: 1 Santos_RicardoRibeirodos_D.pdf: 1101695 bytes, checksum: 4ed1029f4633af49dda77618650600a7 (MD5) Previous issue date: 2007 / Resumo: Anúncios recentes sobre os limites do desempenho dos processadores devido ao alcance da barreira térmica têm motivado a pesquisa sobre novas organizações arquiteturais e modelos de execução que visam continuar o aumento de desempenho dos processadores. Este trabalho propõe uma nova arquitetura de processador denominada 2D-VLIW. A arquitetura possui uma organização arquitetural baseada em uma matriz bidimensional de unidades funcionais e de registradores distribuídos ao longo dessa matriz. O modelo de execução 2D-VLIW possibilita que instruções longas, formadas por operações simples, sejam buscadas na memória e executadas sobre a matriz de unidades funcionais. Além disso, são propostos algoritmos para geração de código para extrair o paralelismo e preparar o código para ser executado sobre a arquitetura. Algumas contribuições deste trabalho são a concepção de uma nova arquitetura de processador que explora paralelismo em nível de instruções através de um novo arranjo dos elementos arquiteturais, a adoção de um modelo de execução que captura a geometria dos DAGs e associa os vértices e arestas desses DAGs aos recursos do hardware, um conjunto de algoritmos para escalonamento de instruções, a alocação de registradores e a codificação de instruções na arquitetura 2D-VLIW. Os resultados experimentais comparam o desempenho do modelo de execução dessa arquitetura com o modelo EPIC adotado pelo processador HPL-PD. O speedup obtido por 2D-VLIW foi de 5% at'e 63%. A estratégia de escalonamento adotada por 2D-VLIW foi também avaliada e os ganhos obtidos através do OPC e OPI foram até 4 vezes melhores que aqueles obtidos por um algoritmo de escalonamento baseado em list scheduling / Abstract: Recent announcements on processor performance limits due to the thermal barrier have motivated research into innovative architectural organizations and execution models to sustain the increase of performance. This work proposes a new architecture named 2D-VLIW. The architecture provides a new architectural organization of the processing elements by using a two-dimensional functional units matrix and registers spread out along this matrix. The 2D-VLIW execution model fetches long instructions comprised of simple operations in the memory and dispatches these operations to the matrix. Moreover, the work presents new algorithms for code generation which are the responsible for extracting the parallelism of the applications and preparing the code for the 2D-VLIW architecture. Some contributions of this work are a new high performance architecture that exploits instruction level parallelism by a new arrangement of the architectural elements, the adoption of an execution model that captures the geometry of the DAGs and matches them to the hardware resources, a set of algorithms for code generation that make them possible to schedule instructions, allocate registers and encode long instructions of the 2D-VLIW architecture. Experimentos were used for comparing the performance of the 2D-VLIWexecution model to the EPIC execution model of the HPL-PD architecture. The speedup obtained by 2D-VLIW ranges from 5%-63% for all the evaluated programs. The scheduling strategy based on subgraph isomorphism was also evaluated and the OPC and OPI gains were up to 4× better than that of the list scheduling algorithm / Doutorado / Doutor em Ciência da Computação
77

PBIW : um esquema de codificação baseado em padrões de instrução / PBIW : an encoding technique based on instruction patterns

Batistella, Rafael Fernandes 28 February 2008 (has links)
Orientador: Rodolfo Jardim de Azevedo / Dissertação (mestrado) - Universidade Estadual de Campinas, Instituto de Computação / Made available in DSpace on 2018-08-11T00:49:37Z (GMT). No. of bitstreams: 1 Batistella_RafaelFernandes_M.pdf: 3411156 bytes, checksum: 7e6b46824189243405a180e949db65c6 (MD5) Previous issue date: 2008 / Resumo: Trabalhos não muito recentes já mostravam que o aumento de velocidade nas memórias DRAM não acompanha o aumento de velocidade dos processadores. Mesmo assim, pesquisadores na área de arquitetura de computadores continuam buscando novas abordagens para aumentar o desempenho dos processadores. Dentro do objetivo de minimizar essa diferença de velocidade entre memória e processador, este trabalho apresenta um novo esquema de codificação baseado em instruções codificadas e padrões de instruções ¿ PBIW (Pattern Based Instruction Word). Uma instrução codificada não contém redundância de dados e é armazenada em uma I-cache. Os padrões de instrução, de forma diferente, são armazenados em uma nova cache, chamada Pattern cache (P-cache) e são utilizados pelo circuito decodificador na preparação da instrução que será repassada aos estágios de execução. Esta técnica se mostrou uma boa alternativa para estilos arquiteturais conhecidos como arquiteturas VLIW e EPIC. Foi realizado um estudo de caso da técnica PBIW sobre uma arquitetura de alto desempenho chamada de 2D-VLIW. O desempenho da técnica de codificação foi avaliado através de experimentos com programas dos benchmarks MediaBench, SPECint e SPECfp. Os experimentos estáticos avaliaram a eficiência da codificação PBIW no aspecto de redução de código. Nestes experimentos foram alcançadas reduções no tamanho dos programas de até 81% sobre programas codificados com a estratégia de codifica¸c¿ao 2D-VLIW e reduções de até 46% quando comparados á programas utilizando o modelo de codificação EPIC. Experimentos dinâmicos mostraram que a codificação PBIW também é capaz que gerar ganhos com relação ao tempo de execução dos programas. Quando comparada à codificação 2D-VLIW, o speedup alcançado foi de at'e 96% e quando comparada à EPIC, foi de até 69% / Abstract: Past works has shown that the increase of DRAM memory speed is not the same of processor speed. Even though, computer architecture researchers keep searching for new approaches to enhance the processor performance. In order to minimize this difference between the processor and memory speed, this work presents a new encoding technique based on encoded instructions and instruction patterns - PBIW (Pattern Based Instruction Word). An encoded instruction contains no redundancy of data and it is stored into an I-cache. The instruction patterns, on the other hand, are stored into a new cache, named Pattern cache (P-cache) and are used by the decoder circuit to build the instruction to be executed in the execution stages. This technique has shown a suitable alternative to well-known architectural styles such as VLIW and EPIC architectures. A case study of this technique was carried out in a high performance architecture called 2D-VLIW. The performance of the encoding technique has been evaluated through trace-driven experiments with MediaBench, SPECint and SPECfp programs. The static experiments have evaluated the PBIW code reduction efficiency. In these experiments, PBIW encoding has achieved up to 81% code reduction over 2D-VLIW encoded programs and up to 46% code reduction over EPIC encoded programs. Dynamic experiments have shown that PBIW encoding can also improve the processor performance. When compared to 2D-VLIW encoding, the speedup was up to 96% while compared to EPIC, the speedup was up to 69% / Mestrado / Arquitetura de Computadores / Mestre em Ciência da Computação
78

Geração automática de backend de compiladores baseada em ADLs / ADL based automatic compiler backend generation

Auler, Rafael, 1986- 19 August 2018 (has links)
Orientador: Paulo Cesar Centoducatte / Dissertação (mestrado) - Universidade Estadual de Campinas, Instituto de Computação / Made available in DSpace on 2018-08-19T09:40:46Z (GMT). No. of bitstreams: 1 Auler_Rafael_M.pdf: 1695289 bytes, checksum: e7a4a8add24fe834544d29e932451d61 (MD5) Previous issue date: 2011 / Resumo: O processo de automatização da criação de backends de compiladores, isto é, do componente responsável pela tradução final para código de máquina, é perseguido desde o surgimento dos primeiros compiladores. A separação entre os algoritmos empregados no backend e a descrição formal da máquina, que requer conhecimento sobre a arquitetura alvo, é uma característica bastante desejada, uma vez que propicia a criação de novos backends sem a necessidade de conhecer o projeto do compilador, mas apenas do processador. Por esse motivo, um esforço natural para manter o desenvolvimento simples e intuitivo é a concentração do conhecimento sobre a máquina alvo em uma forma concisa de descrição, a partir da qual seja possível especializar algoritmos genéricos de compilação para este alvo específico. Uma linguagem de descrição de arquiteturas (ADL) permite a especificação das características arquiteturais de processadores, incluindo o seu conjunto de instruções (ISA). Neste trabalho, um estudo de mecanismos para gerar backend de compiladores através de descrições arquiteturais de processadores é apresentado, com ênfase no estudo de caso da ADL ArchC com o compilador LLVM. Um protótipo de um gerador de backends para LLVM a partir de uma descrição em ArchC foi desenvolvido, e backends para as arquiteturas ARM, MIPS, SPARC e PowerPC foram gerados com sucesso. Para alcançar este objetivo, foi usado um algoritmo de busca para resolver o problema da programação automática e inferir como implementar fragmentos pré-selecionados da linguagem intermediária LLVM utilizando instruções de uma arquitetura alvo arbitrária. Quatro técnicas para aumentar a velocidade deste algoritmo são apresentadas, de forma a não somente viabilizar uma solução para a geração automática de backends, mas também concluir o processo em menos de 20 segundos para três das quatro arquiteturas testadas. Programas do benchmark Mibench foram compilados com os compiladores gerados, executados com simuladores ArchC e os resultados comparados com aqueles gerados a partir dos mesmos programas compilados com os compiladores gcc e LLVM original, validando os novos backends. A qualidade do código gerado pode ser comparada com a de compiladores consagrados, caso seja utilizado um otimizador peephole para realizar substituições simples de algumas sequências ineficientes / Abstract: Researchers pursue the automation of compiler backend generation, the component responsible for final translation from intermediate language to machine code, since the begining of compilers theory creation. The separation between the algorithms used in the backend and formal machine description, which encompasses knowledge about the target architecture, is an important feature, since it facilitates the creation of new backends without the need for deep understanding of the compiler project. For this reason, an effort to maintain the development natural, simple and intuitive must concentrate the knowledge of the target machine in a concise description in a way it is possible to specialize generic algorithms to this target. An architecture description language (ADL) allows the specification of architectural features of processors, comprising the instruction set architecture available. This work presents a study of mechanisms for generating compiler backend through architectural descriptions of processors, with emphasis on a case study of the ArchC ADL with the LLVM compiler. We developed an automatic backend generator prototype for LLVM backends based on ArchC and successfully generated backends for the architectures ARM, MIPS, PowerPC and SPARC. To achieve this, we used a search algorithm to solve the problem of automatic programming and to infer how to implement pre-selected fragments of LLVM intermediate language using instructions of an arbitrary target architecture. We present four techniques to increase the speed of this algorithm which not only enables a solution for the automatic generation of backends, but also completes the process in less than 20 seconds for three of four architectures tested. Test compilation of Mibench benchmark programs attested the proper functioning of the backend and revealed that the quality of the generated code can compare with that of existing compilers, if a peephole optimizer were used to perform some simple substitutions of inefficient sequences / Mestrado / Ciência da Computação / Mestre em Ciência da Computação
79

Function Practice : Ett verktyg för att öva programmering

Andersson, Fredrik January 2015 (has links)
När fler och fler väljer att lära sig programmering kan det vara bra att öva på attlösa problem, genom att skriva funktioner som sedan kan testas för att se omanvändaren har lyckats. Function Practice är en tjänst för att kunna öva programmeringpå just detta sätt, genom att lösa uppgifter med att skriva funktioneri olika programmeringsspråk, de språk som kommer kunna användas ärJava, C++ och Python. Det ger även ett lätt och smidigt sätt att skapa sådanauppgifter. Syftet med projektet är att utveckla denna tjänst, genom att skapa enwebbtjänst som kan kompilera och köra funktioner för de olika språken, enhemsida som användarna kan skriva och testa kod på, samt ett sätt att definierauppgifterna som ska lösas, detta testas sedan med hjälp av ett användartest i enmindre grupp för att se om hur användarvänlig den är, samt att funktionalitetentestas och jämförs med några tidigare lösningar. Tjänsten testas för att se om ytterligaresäkerhet behövs genom att försöka att köra kommandon på värdsystemet.Slutsatsen av projektet är funktionaliteten bakom tjänsten fungerar dock atthemsidan behöver vara lite tydligare för att den ska vara mer användarvänlig,samt att användaren borde kunna få felmeddelanden utifall något inte fungerarför att de lättare ska veta vad de behöver göra. Säkerheten visar sig vara en viktigdel då det går att köra kommandon på värdsystemet vilket ger användarnafull kontroll på systemet. / As more and more people choose to learn programming it may be good to practicesolving problems by writing functions that can then be tested to see if theuser has succeeded. Function Practice is a service to be able to practice programmingin exactly this way, by solving tasks of writing functions in differentprogramming languages, the languages that will be used is Java, C ++ andPython. It also provides an easy and convenient way to create such tasks. Theaim of the project is to develop this service by creating a Web service that cancompile and run functions for the different languages, a website that users canwrite and test code, as well as a way to define the tasks to be solved, this is thentested with a user test in a smaller group to see how user-friendly it is, and thefunctionality is tested and compared with some previous solutions. The serviceis tested to see if additional security is needed by trying to run commands onthe host system. The conclusion of the project is that the functionality behindthe service works, however, that the website needs to be a little clearer for it tobe more user-friendly, and that the user should be able to get error messages incase something does not work to make it easier to know what they need to do.Security proves to be an important part when it is possible to execute commandson the host system which gives users full control of the system.
80

Programspråk specificerade av nyttjare : en pilotstudie om tidsåtgång vid uppmärkning av dokument

Bragner, Johan, Wasing, Malin January 2016 (has links)
IT-projekt misslyckas ofta för att de blir sena och dyrare än planerat, och i många fall är det tidsfaktorn som är begränsande för projekten. Det existerar många olika programspråk och behov att dela konstruktioner mellan dessa. Idag använder applikationer inom samma system ofta olika terminologi och behovet av konverteringar uppkommer. Det existerar standardiserade språk som till exempel märkspråket XML men då organisationer väljer att skapa sin egen syntax för att formatera publiceringar kan ett motstånd urskiljas. Uppsatsen kan användas som underlag för vidare forskning inom programspråk. Denna studie fokuserar på att jämföra om val av syntax har någon betydelse för tidsåtgången vid uppmärkning av dokument. Den valda forskningsstrategin är experiment. En pilotstudie utfördes och med resultatet från studien gjordes en hypotesprövning i form av ett t-test. Analysen av resultatet antydde att användandet av valfri syntax implicerade en mindre tidsåtgång vid uppmärkning av dokument än vid användandet av XML. Från analysen konstateras det att ämnet bör undersökas vidare och att studien bör genomföras i större omfattning. / IT projects often fail because they are late and more expensive than planned, and in many cases it is the time factor that is limiting for projects. There exist many different programming languages and the need to share structures between them. Applications within the same system often uses different terminology and the need for conversions occurs. Standardized languages such as XML exist but when organizations choose to create their own syntax for formatting publications instead a resistance can be distinguished. The paper can be used as basis for further research in the area of programming languages. This research focuses on comparing if the choice of syntax affects expenditure of time when marking document. The selected research strategy is experiment. A pilot study has been done and based on the results of the study a hypothesis testing (t-test) was made. The analysis of the results indicated that the use of optional syntax implied that less time was spent at marking document than the use of XML. The conclusion from this was that this area should be further explored and that the study should be done on a larger scale.

Page generated in 0.0808 seconds