岗位职责:
LLVM优化研发
负责LLVM编译器中端和后端的优化开发工作,包括但不限于代码生成、指令调度、寄存器分配、内存优化等。
设计和实现新的优化算法和策略,提升生成代码的性能和效率。
对现有优化模块进行分析和改进,解决性能瓶颈和代码质量问题。
与硬件团队合作,针对特定硬件架构进行性能调优,充分发挥硬件性能。
技术研究与创新:
跟踪和研究编译器优化领域的最新技术和趋势,引入先进的优化技术和理念。
开展技术创新和研发工作,推动LLVM编译器在性能、功能和可扩展性方面的提升。
参与公司内部的技术研究项目,与其他团队合作解决技术难题。
代码维护与改进:
负责LLVM优化模块的代码维护和改进工作,确保代码的稳定性和可维护性。
参与代码审查,确保代码质量符合公司标准和规范。
编写技术文档和优化指南,为团队成员提供技术支持和培训。
任职要求:
教育背景:
计算机科学、软件工程或相关专业本科及以上学历。
工作经验:
5年以上LLVM编译器开发经验,熟悉LLVM的架构和优化流程。
有编译器性能优化项目经验者优先。
技术能力:
精通C/C++编程语言,具有扎实的编程基础和良好的编程风格。
深入理解编译原理,包括词法分析、语法分析、语义分析、中间代码生成、代码优化和目标代码生成等各个阶段的原理和算法。
熟悉LLVM的中端和后端优化技术,如LLVM IR、优化模块、代码生成、指令调度、寄存器分配等。
熟悉现代处理器的体系结构,如x86、ARM
等,了解其指令集、流水线、缓存和内存层次结构等。
熟练使用性能分析工具,如gprof、perf、LLVM自带的性能分析工具等。
其他技能:
具备独立分析和解决复杂技术问题的能力,能够在面对编译器优化中的各种挑战时,迅速定位问题并提出有效的解决方案。
具备良好的团队合作精神,能够与团队成员、其他部门以及客户进行有效的沟通和协作,共同完成项目目标。
对新技术和新领域有强烈的学习兴趣和快速的学习能力,能够不断更新自己的知识体系,跟上技术发展的步伐。
工作地点:
北京/天津/上海/成都
薪资待遇:
面议