Meta AR/VR Job | Research Engineer, ML Compiler (PhD)
Job(岗位): Research Engineer, ML Compiler (PhD)
Type(岗位类型): Research
Citys(岗位城市): Sunnyvale, CA +2 locations
Date(发布日期): 2024-8-30
Summary(岗位介绍)
Meta Reality Labs brings together a world-class team of researchers, developers, and engineers to create the future of virtual and augmented reality, which together will become as universal and essential as smartphones and personal computers are today. The compute performance and power efficiency requirements of Virtual and Augmented Reality require custom silicon.
In this position, you would support research and development into a compiler tool-chain for state-of-the-art deep learning hardware components optimized for AR/VR systems. You will be part of our efforts to research, architect, design and implement a compiler and runtime stack, which compiles PyTorch models down to binaries for hardware accelerator blocks. You will be part of a team that includes compiler, machine learning algorithms and software, firmware and ASIC experts.
Qualifications(岗位要求)
Currently has, or is in the process of obtaining a Bachelor's degree in Computer Science, Computer Engineering, relevant technical field, or equivalent practical experience. Degree must be completed prior to joining Meta.
Currently has or is in the process of obtaining a PhD in the field of Machine Learning, AI, Computer Science, Electrical Engineering or a related field, or equivalent practical experience. Degree must be completed prior to joining Meta.
Experience in software design and programming experience in Python and/or C/C++ for development, debugging, testing and performance analysis.
Experience in empirical research and for addressing research problems.
Experience communicating research for public audiences of peers.
Must obtain work authorization in the country of employment at the time of hire, and maintain ongoing work authorization during employment.
Description(岗位职责)
Analyze and design effective compiler passes and optimizations. Research, implement, and/or enhance code generation targeting machine learning accelerators.
Research into new techniques to map ML graphs to hardware implementations, model data-flows, create cost-benefit analysis and estimate silicon power and performance.
Contribute to the development of machine-learning libraries, intermediate representations, export formats, and analysis tools.
Conduct design and code reviews. Evaluate code performance, debug, diagnose and drive resolution of compiler and cross-disciplinary system issues.
Analyze and improve the efficiency, scalability, and stability of our toolchains.
Interface with other compiler-focused teams to evaluate and incorporate their innovations and vice versa.
Additional Requirements(额外要求)
Experience writing compilers or similar code optimization software.
Experience in deep learning algorithms and techniques, e.g., convolutional neural networks, recurrent networks, etc.
Experience working on and contributing to an active compiler toolchain codebase, such as LLVM, MLIR, GCC, MSVC, Glow.
Experience of developing in a mainstream machine-learning framework, e.g. PyTorch, Tensorflow or Caffe.
Experience with machine-code generation / compiler back-ends.
Experience working and communicating cross functionally in a team environment.
Experience solving complex problems and comparing alternative solutions, tradeoffs, and diverse points of view to determine a path forward.
Demonstrated research and software engineering experience via an internship, work experience, coding competitions, or widely used contributions in open source repositories (e.g. GitHub).
Proven track record of achieving significant results as demonstrated by grants, fellowships, patents, as well as publications at leading workshops, journals or conferences such as CLR, NeurIPS, CVPR, ACL, ICML, MLSys, ISCA, MICRO, DAC, CGO, PACT, and ASPLOS.