Bruno Cardoso Lopes
Bruno Cardoso Lopes received a PhD in Computer Science from University of Campinas, Brazil. He's been an LLVM contributor since 2007 and implemented the MIPS backend from scratch, which maintained for several years. Among his other contributions, he wrote the x86 AVX support and improved the ARM assembler. His research interests include code compression techniques and reduced bit width ISAs. In the past, he has also developed drivers for Linux and FreeBSD operating systems.
Informações coletadas do Lattes em 03/11/2022
Acadêmico
Formação acadêmica
Doutorado em Ciência da Computação
2009 - 2014
Universidade Estadual de Campinas
Título: Design and Evaluation of Compact ISAs
Rodolfo Jardim de Azevedo. Bolsista do(a): Fundação de Amparo à Pesquisa do Estado de São Paulo. Palavras-chave: arquitetura de computadores; compiladores; compressão de código.Grande área: Ciências Exatas e da Terra / Área: Ciência da Computação / Subárea: Sistemas de Computação / Especialidade: Arquitetura de Sistemas de Computação. Grande Área: Ciências Exatas e da Terra / Área: Ciência da Computação / Subárea: Sistemas de Computação / Especialidade: Hardware. Grande Área: Ciências Exatas e da Terra / Área: Ciência da Computação / Subárea: Metodologia e Técnicas da Computação / Especialidade: Linguagens de Programação.
Mestrado interrompido em 2009 em Ciência da Computação
2008 - interrompida
Universidade Estadual de Campinas
Bolsista do(a): Coordenação de Aperfeiçoamento de Pessoal de Nível Superior. Ano de interrupção: 2009Palavras-chave: compiladores; arquitetura de computadores.Grande área: Ciências Exatas e da Terra / Área: Ciência da Computação / Subárea: Sistemas de Computação / Especialidade: Arquitetura de Sistemas de Computação. Grande Área: Ciências Exatas e da Terra / Área: Ciência da Computação / Subárea: Metodologia e Técnicas da Computação / Especialidade: Linguagens de Programação.
Graduação em Engenharia de Computação
2003 - 2007
Universidade Estadual de Campinas
Orientador: Rodolfo Jardim de Azevedo
Idiomas
Inglês
Compreende Bem, Fala Bem, Lê Bem, Escreve Bem.
Áreas de atuação
Grande área: Ciências Exatas e da Terra / Área: Ciência da Computação / Subárea: Metodologia e Técnicas da Computação/Especialidade: Linguagens de Programação.
Grande área: Ciências Exatas e da Terra / Área: Ciência da Computação / Subárea: Sistemas de Computação/Especialidade: Arquitetura de Sistemas de Computação.
Grande área: Ciências Exatas e da Terra / Área: Ciência da Computação / Subárea: Metodologia e Técnicas da Computação/Especialidade: Segurança de Redes.
Grande área: Ciências Exatas e da Terra / Área: Ciência da Computação / Subárea: Sistemas de Computação/Especialidade: Hardware.
Participação em eventos
LLVM Developers Meeting 2014. 2014. (Congresso).
GUADEC - The Gnome Conference. Clang, LLVM, and GNOME. 2013. (Congresso).
Workshop on the Interaction amongst Virtualization, Operating Systems and Computer Architecture (WIVOSCA). ISA Aging: A X86 case study. 2013. (Congresso).
Compiler, Architecture and Tools Conference (CATC). ISA Anti-Aging: Recycling Old Instructions and Reducing ISA Complexity. 2013. (Congresso).
Embedded Linux Conference. LLVM, Clang and Embedded Linux Systems. 2011. (Congresso).
Apple Worldwide Developers Conference (WWDC). LLVM Lab Monitor. 2011. (Exposição).
Embedded Linux Conference - ELC. Understanding and writing an LLVM Compiler Backend. 2009. (Congresso).
Embedded Linux Conference Europe - ELCE. The LLVM MIPS and ARM Back-ends. 2009. (Congresso).
Computer Architecture and High Performance Computing Symposium (SBAC). SPARC16: A New Compression Approach for the SPARC Architecture. 2009. (Congresso).
LLVM Developers Meeting.Object Code Emission and llvm-mc. 2009. (Encontro).
Hackers to Hackers Conference (H2HC). Low Level Playground - PCI Rootkits. 2008. (Congresso).
Workshop de Computação de Alto Desempenho (WSCAD).High Computing Performance with CUDA. 2008. (Oficina).
International Free Software Forum (FISL 9).Writing LLVM backends. 2008. (Encontro).
International Free Software Forum (FISL 8). 2007. (Encontro).
Sematis - Semana de Tecnologia de informação do Sudoeste do Paraná. Sematis - Semana de Tecnologia de informação do Sudoeste do Paraná O Ataque de buffer overflow. 2006. (Congresso).
International Free Software Forum (FISL 7).Distribuição Linux Librix. 2006. (Encontro).
International Free Software Forum (FISL 6).Distribuição Linux Librix. 2005. (Outra).
XXI ENECOMP. 2003. (Encontro).
Produções bibliográficas
-
LOPES, B. C. ; R. Auler . Getting Started with LLVM Core Libraries. 1. ed. , 2014.
-
LOPES, B. C. ; APPEL, D. . Gerenciamento de Redes. Revista PC & Cia, p. 36 - 39, 10 jan. 2005.
-
LOPES, B. C. ; GOMES, P. H. . Homeplug. Revista PC & Cia, p. 61 - 63, 27 fev. 2004.
-
LOPES, B. C. ; Porto, L. P. (Lucas Pereira Porto) . Voz sobre IP. Revist a PC & Cia, p. 47 - 49, 18 fev. 2004.
-
LOPES, B. C. ; R. Auler ; BORIN, E. ; AZEVEDO, R. J. . ISA Anti-Aging: Recycling Old Instruc- tions and Reducing ISA Complexity. In: Compiler, Architecture and Tools Conference (CATC), 2013, Haifa. ISA Anti-Aging: Recycling Old Instruc- tions and Reducing ISA Complexity, 2013.
-
LOPES, B. C. ; R. Auler ; BORIN, E. ; AZEVEDO, R. J. . ISA Aging: A X86 case study. In: Workshop on the Interaction amongst Virtualization, Operating Systems and Computer Architecture (WIVOSCA), 2013, Tel Aviv. ISA Aging: A X86 case study, 2013.
-
ECCO, L. ; LOPES, B. C. ; PANNAIN, R. ; CENTODUCATTE, P. C. ; AZEVEDO, R. J. . SPARC16: A New Compression Approach for the SPARC Architecture. In: International Symposium on Computer Architecture and High-Performance Computing - SBAC-PAD, 2009, São Paulo, SP. Proceedings of International Symposium on Computer Architecture and High Performance Computing - SBAC-PAD. Los Alamitos, CA, USA: IEEE Computer Society, 2009. v. 0. p. 169-176.
-
LOPES, B. C. ; ECCO, L. ; AZEVEDO, R. J. . Design and evaluation of compact ISA extensions. Microprocessors and Microsystems , 2016.
-
LOPES, B. C. ; AULER, R. ; BORIN, E. ; AZEVEDO, R. J. . SHRINK: Reducing the ISA Complexity Via Instruction Recycling. The International Symposium on Computer Architecture , 2015.
Outras produções
LOPES, B. C. . LLVM Mips backend. 2007.
Histórico profissional
Endereço profissional
-
Universidade Estadual de Campinas, Instituto de Computação, LSC - Laboratorio de Sistemas Computacionais. , Avenida Albert Einstein nº 400, Cidade Universitária, 13083970 - Campinas, SP - Brasil, Telefone: (19) 35215838
Experiência profissional
2014 - Atual
APPLE INC BRASILVínculo: Celetista, Enquadramento Funcional: Compiler Engineer, Carga horária: 40, Regime: Dedicação exclusiva.
2010 - 2010
APPLE INCVínculo: Celetista, Enquadramento Funcional: Compiler Engineer Intern (Estagiário), Carga horária: 40, Regime: Dedicação exclusiva.
Outras informações:
Summer internship in the Apple compiler code generator team - support for parsing and assembling x86 AVX instructions and vector shuffle handling rewrite.
2007 - 2009
Google Inc., GoogleVínculo: Contrato temporário, Enquadramento Funcional: Estudante do programa Google Summer of Code
Outras informações:
Participação 3 anos consecutivas no programa Google Summer Of Code.
Atividades
-
05/2009 - 08/2009
Outras atividades técnico-científicas , Universidade Estadual de Campinas, .,Atividade realizada, Suporte a emissão de código objeto no formato ELF.
-
05/2008 - 08/2008
Outras atividades técnico-científicas , Universidade Estadual de Campinas, .,Atividade realizada, Suporte ao console PSP no back-end MIPS do compilador LLVM.
-
05/2007 - 08/2007
Outras atividades técnico-científicas , Universidade Estadual de Campinas, .,Atividade realizada, Implementação do back-end MIPS para o compilador LLVM..
2007 - 2007
Kryptus Tecnologias, KryptusVínculo: Colaborador, Enquadramento Funcional: Estagiário, Carga horária: 15
Outras informações:
Development of embedded cryptographic firmware, drivers to the Linux Kernel and modifications to FreeBSD kernel TCP/IP protocol stack
2006 - 2007
Universidade Estadual de CampinasVínculo: Iniciação Científica, Enquadramento Funcional: Estudante, Carga horária: 20
Outras informações:
Implementation of a Sparv8 processor (Leon3) and peripherals simulator using the SystemC and ArchC tools aimed at booting the Linux kernel.
2005 - 2006
Convênio Unicamp - ItautecVínculo: Estagiário, Enquadramento Funcional: Programador, Carga horária: 20
Outras informações:
Development of a Brazilian Linux distribution based on Gentoo called Librix. The work consisted in a implementation of the distribution Graphic Installer using PyQt, implementation of a graphic package installer and tutoolyst, a tool designed to automatically compile, pack and easy generate live and install cd s
Criando um monitoramento
Nossos robôs irão buscar nos nossos bancos de dados todos os processos de Bruno Cardoso Lopes e sempre que o nome aparecer em publicações dos Diários Oficiais, avisaremos por e-mail e pelo painel do usuário
Criando um monitoramento
Nossos robôs irão buscar nos nossos bancos de dados todas as movimentações desse processo e sempre que o processo aparecer em publicações dos Diários Oficiais e nos Tribunais, avisaremos por e-mail e pelo painel do usuário
Confirma a exclusão?