2021 Internship - Compiler Toolchains

About SiFive

SiFive is on a mission to make it easier and faster to build custom chips for the new age of computing based on data, AI, and communications. SiFive is the leading provider of commercial processor cores using the exciting, new RISC-V standard being adopted and evaluated by leading technology companies worldwide. Founded by the inventors of RISC-V, and led by a team of seasoned industry executives, SiFive offers the expertise, tools, and tech to enable customized silicon to be developed specifically for each customer’s needs. 

You will be joining a team with passion and purpose: democratizing access to silicon, to unlock customer roadmaps and enable new product experiences in exciting new growth markets.


Location: Please note that due to COVID-19, all US-based internships in 2021 are remote and therefore open to all US-based candidates. In the chance that work-from-home restrictions are lifted, and you do not live near one of our offices, SiFive may arrange you to travel to the local office or HQ to meet the team. 

What You Will Work On:

As an Intern in the Compiler Toolchains team, you will be working on a port of the lllvm-mca Machine Code Analyzer to several SiFive cores. MCA is written predominantly for out of order cores and we would like a port of it for dual-issue in-order cores. You will work with our performance analysis team, as well as the compiler team, to help analyze our core's performance.

What You Will Learn:

  • You will become intimately aware of the instruction scheduling models with LLVM and their use in llvm-mca.
  • How to design and implement a solution that is destined for inclusion in upstream sources.
  • How to collaborate with multiple and cross-functional teams.

Requirements:

  • Pursuing a Bachelor's, Master's or PhD in Computer Engineering, Computer Science, Electrical Engineering, or a similar discipline. 
  • Interest in learning about instruction scheduling models, and their use in performance analysis, within LLVM.
  • Strong C++ programming skills.
  • Practical or academic familiarity with LLVM.
  • Strong written and verbal communication skills.

SiFive is proud to be an equal employment opportunity workplace. We will ensure that individuals with disabilities are provided reasonable accommodation to participate in the job application or interview process, to perform essential job functions, and to receive other benefits and privileges of employment. Please contact us to request accommodation.

If you yearn to be challenged and wish to work in an environment where the boundaries of your creativity and skills will be tested, then SiFive is the place for you!

 

Notice to Staffing Agencies / External Recruiters:

Thank you for your interest in SiFive Inc. Please note that SiFive does not accept unsolicited resumes from external agencies unless contracted to fill a specific position. Agencies are hereby specifically directed NOT to contact SiFive employees directly in an attempt to present candidates – all applications must go through SiFive's internal recruiting team. Any third-party resume forwarded by agencies/external recruiters to a SiFive mailing address, fax machine or email address, directly to SiFive employees, or to SiFive's resume database will be considered property of SiFive Inc and treated as a direct application. This exchange does not constitute an agreement between SiFive and the agency/external recruiter. SiFive reserves the right to contact the candidate directly. Employment agencies/external recruiters will receive no compensation from SiFive or its companies.