Jobs

Senior Graphics Processing Unit Driver Developer (Someexperience required)


Job details
  • ARM
  • Cambridge
  • 3 days ago

Job Overview: Our group writes the layer of the driverthat implements the popular GPU compute APIs, such as OpenCL, whichprovide massively parallel execution of general purpose (C-like)code on Mali GPUs, often known as GPGPU (General-purpose computingon graphics processing units). Our many customers haveperformance-critical GPU compute use cases that include machinelearning (ML), image processing & computer vision (CV), videoencoding and decoding. Mobile devices are highly constrainedenvironments, and our challenge is to provide this sophisticatedfunctionality, while improving both dependability and efficiency.If you want to develop your skills and understanding in thesetechnologies, this is the opportunity for you. Join us and togetherwe will make GPU compute and Mali a success in our customers hands!Your new team: You will join a multifaceted, collaborative andhighly motivated Agile software development team working on the GPUcompute drivers for the next generation Mali™ mobile GPUs. You willdevelop with the latest yet-to-be-published Android versions andwill help craft the technologies that the mobile market will see inyears to come. This inclusive multinational development team islocated in a cheerful campus in Cambridge, the technological centreof the UK. Responsibilities: We have different teams that handlethe development, performance analysis and optimisation of the GPUdriver. You may be adding new functionality to support the latestGPUs, identifying optimisation opportunities to squeeze out thatlast bit of performance, developing our infrastructure to ensure itsupports the ever-growing number of benchmarks that we run orworking on many other exciting tasks! You will work in a Linuxenvironment, working on Arm-based targets including models, FPGAsand silicon from our partner companies (thereby covering past,present and future generations of our designs). As a member of anAgile team, you will have the chance to try your hand at differentaspects of our work. Engineers grow their expertise throughin-house and externally hosted training, and through peer codereviews. You will be working closely together with our community ofengineering teams across Arm’s European design centres developingtechnologies for the current and next generations of Arm Mali™GPUs. ● Participating in all phases of software development –including design, implementation, testing, code review anddocumentation. ● Implementing new features in the driver andorinfrastructure. ● Testing and analysing the functionality andperformance of our software. ● Performing design and code reviewsfor other team members. ● Engaging with the rest of the team forinvestigation, estimation and planning purposes. ● Maintaining theexisting codebase: fixing bugs and other quality assuranceactivities. ● Promoting and demonstrating the Arm core beliefs andbehaviours. Required Skills and Experience: ● Experience in C andC++ programming. ● An understanding of embedded hardwarearchitectures and software engineering development practices. ●Proficiency in problem solving and debugging with a practical,organised and analytical approach to work. ● Good interpersonalteam-working skills, self-motivated and results focused. ● Goodwritten and spoken English. “Nice To Have” Skills and Experience: ●Experience of OpenCL, CUDA, or Vulkan. ● Experience in scriptingwith Python and Bash. ● Knowledge of software optimisation,profiling and instrumentation techniques. ● Experience developingsoftware for Linux or Android based systems. ● Experience with dataanalysis and statistics. ● Experience with machine learning. ●Knowledge of the internal operation of compilers (particularlyLLVM), although this is not a compiler role. ● Familiarity withGit, and bug tracking tools. ● Experience in creating design andtest specifications and in the creation and maintenance of testsuites. ● Automation skills, with exposure to Docker. ● Experiencewith Agile development processes. ● Experience of driver or HALdevelopment. ● Working exposure to software development for acommercial organisation. In Return: We have a strong background ofbuilding up expertise in people, so this is an excellentopportunity to learn something new and interesting in a friendlyand collaborative environment. You will get to contribute to ourMali and Immortalis GPU product lines, learn about the latest GPUtechnologies, utilising your engineering skills to support andinfluence the technologies used on millions of devices. #LI-SM1Accommodations at Arm: At Arm, we want our people to Do GreatThings. If you need support or an accommodation to Be YourBrilliant Self during the recruitment process, please . To note, by sending us the requestedinformation, you consent to its use by Arm to arrange forappropriate accommodations. All accommodation requests will betreated with confidentiality, and information concerning theserequests will only be disclosed as necessary to provide theaccommodation. Although this is not an exhaustive list, examples ofsupport include breaks between interviews, having documents readaloud or office accessibility. Please email us about anything wecan do to accommodate you during the recruitment process. HybridWorking at Arm: Arm’s approach to hybrid working is designed tocreate a working environment that supports both high performanceand personal wellbeing. We believe in bringing people together faceto face to enable us to work at pace, whilst recognizing the valueof flexibility. Within that framework, we empower groupsteams todetermine their own hybrid working patterns, depending on the workand the team’s needs. Details of what this means for each role willbe shared upon application. In some cases, the flexibility we canoffer is limited by local legal, regulatory, tax, or otherconsiderations, and where this is the case, we will collaboratewith you to find the best solution. Please talk to us to find outmore about what this could look like for you. Equal Opportunitiesat Arm: Arm is an equal opportunity employer, committed toproviding an environment of mutual respect where equalopportunities are available to all applicants and colleagues. Weare a diverse organization of dedicated and innovative individuals,and don’t discriminate on the basis of race, color, religion, sex,sexual orientation, gender identity, national origin, disability,or status as a protected veteran.

Sign up for our newsletter

The latest news, articles, and resources, sent to your inbox weekly.

Similar Jobs

Senior Graphics Processing Unit Driver Developer (Someexperience required)

Job Overview: Our group writes the layer of the driverthat implements the popular GPU compute APIs, such as OpenCL, whichprovide massively parallel execution of general purpose (C-like)code on Mali GPUs, often known as GPGPU (General-purpose computingon graphics processing units). Our many customers haveperformance-critical GPU compute use cases that include machinelearning...

ARM Cambridge