Responsibilities
- Participate in the system solution design of next generation multi-core multi-chip AI sub-system that scales beyond 1000s TOPS for high performance computing.
- Perform system validation, use case validation, performance analysis, benchmarking, modeling to identify performance bottlenecks, and system parameters optimization.
- Deliver optimized solutions that meet the demanding requirements of HPC workloads and articulate them effectively across stakeholders ranging from toolchain, software and hardware teams, domain experts, and to technology leadership.
- Collaborate with hardware teams to design and optimize the system's computational components, including processors, accelerators, interconnects, and memory subsystems.
- Collaborate with software developers to define and implement software frameworks, libraries, and tools that maximize performance and productivity on the target HPC architecture.
- Collaborate with domain experts and application developers to understand the unique requirements of specific workloads and propose tailored architectural solutions.
Qualifications
- Bachelor's or Master's degree in Computer Engineering, Electrical Engineering, or related field.
- Good understanding of multiple key technology areas is expected (Camera/Image sensors, Graphics, Audio, Video, Display, AI/ML, Computer Vision, distributed systems, SoC architecture, RTOS).
- Good problem-solving abilities and the ability to analyze and address complex performance and scalability challenges.
- Programming skills in languages such as C, C++, and/or Python.
- Ability to translate and navigate business and customer needs into actionable items for software and hardware development teams.
- Working knowledge with ML frameworks like PyTorch and TensorFlow.
- Working knowledge of ARM and/or RISCV CPU.
- Working knowledge of software stack components, such as compilers, runtime systems, job schedulers, and scientific libraries.
Preferences
- Experience in performance optimization via software-hardware co-design is a plus.
- Experience with engineering tools and workflows for large systems is a plus.
- Experience with SystemC modeling is a plus.
- Working knowledge with ARM and/or RISCV ISA is a plus.
- Working knowledge with FPGA is a plus.
- Working knowledge with OpenCL/CUDA/SYCL programming is a plus.
- Working knowledge of system interconnects like GbE, PCIe, InfiniBand, etc is a plus.
- Working knowledge with RTL design is a plus.