• students/interns
  • contractors
  • consultants
  • temporary
  • graduate
  • experienced professionals
  • Category 1
  • Category 2
  • Category 3
  • Category 4
  • Category 5
  • Category 6
  • Country 1
  • Country 2
  • Country 3
  • Country 4
  • Country 5
    Search

    GPU Compute Performance Analysis Engineer – Python & C

    • 16532
    • Software Engineering
    • Experienced Professionals
    • Central Engineering - GPU
    • Central Engineering - GPU Engineering
    • UK
    • Cambridge

    Share:

    We are an Equal Opportunity Employer and do not discriminate against any employee or applicant for employment because of race, color, sex, age, national origin, religion, sexual orientation, gender identity, status as a veteran, and basis of disability or any other federal, state or local protected class.

    Job Description

    Are you looking for a meaningful role on the cutting edge of parallel processing on mobile GPU technology?

    You will join a dynamic Agile software development team working on performance analysis and optimisation of the GPU compute drivers for the next generation Mali™ mobile GPUs.

    You will develop with the latest yet-to-be-published Android versions and will help craft the technologies that the mobile market will see in years to come.

    You will need scripting, performance and data analysis, and embedded software development skills, but previous experience of GPUs is not essential.

    This inclusive multinational development team is located in a pleasant campus in Cambridge, the technological centre of the UK.

    Job Purpose

    Our group writes the layer of the driver that implements the popular GPU compute APIs (including OpenCL), which provide massively parallel execution of general purpose (C-like) code on Mali GPUs, often known as GPGPU (General Purpose computing on the GPU). If you want to develop your skills and understanding in these technologies this is the opportunity for you.

    Our many customers have performance-critical GPU compute use cases that include:

    • Machine learning (ML)
    • Image processing & computer vision (CV)
    • Video encoding and decoding

    Mobile devices are highly constrained environments, and our challenge is to provide this complex functionality, while improving both dependability and efficiency.

    Join us and together we will make GPU compute and Mali a success in our customers hands.

    Day to day activities:

    The part of the team you will be joining handles the performance analysis of the driver and GPUs. Bringing up new versions of benchmarks, analysing the results, and identifying optimisation opportunities in the driver. The team also analyses the performance of future GPUs for the latest use cases.

    The benchmarking infrastructure is written using Python, and the driver is written in C and C++.

    You will work in a Linux environment, working on Arm-based targets including models, FPGAs and silicon from our partner companies (thereby covering past, present and future generations of our designs).

    As a member of an Agile team you will have the chance to try your hand at different aspects of our work. Engineers grow their expertise through in-house and externally hosted training, and through peer code reviews.

    You will be working closely together with our community of engineering teams across Arm’s European design centres developing drivers for the current and the next generation of Arm Mali GPUs.

    One of the phenomenal things about working at Arm is that if you have a question about another component, whether that be software, tooling, or even the hardware underneath, you can speak directly to the in-house designer, most of whom are in Cambridge.

    Over the years, engineers develop into specialised experts, generalists, or transition to other disciplines such as project and product management.

    What will I be accountable for?

    • Writing scripts and code to implement the required task (benchmark implementation, automation scripts, analysis scripts, visualisation tools)
    • Test and analyse the functionality and performance of your code (both using models FPGAs and silicon platforms).
    • You are expected to review other team members code and results (benchmark results can be affected by a great many factors that need to be taken into account).
    • Engaging with the rest of the team for investigation, estimation and planning purposes.
    • Promoting and demonstrate the Arm core beliefs and behaviours. 

    Job Requirements

    What skills, experience and qualifications do I need?

    Essential

    • Experience in scripting with Python and Bash.
    • Experience in C programming. and possess an awareness of efficient programming concepts.
    • Knowledge of software optimisation, profiling and instrumentation techniques.
    • Experience with data analysis and statistics.
    • Methodical
    • Proficiency in problem solving and debugging with a practical, organized and analytical approach to work.
    • Good interpersonal team-working skills, self-motivated and results focused.
    • Good written and spoken English.

    Desirable

    • Exposure of using OpenCL, CUDA, or Vulkan
    • Experience in programming with C++ and Object-Oriented Design
    • A solid understanding of embedded hardware architectures and understanding of software engineering development practices.
    • Knowledge of the internal operation of compilers (particularly LLVM), although this is not a compiler role.
    • Experience developing software for Linux or Android based systems.
    • Familiarity with Git, and bug tracking tools
    • Experience in creating design and test specifications with experience in the creation and maintenance of test suites.
    • Previous experience with Agile development processes.
    • Experience of driver or HAL development.
    • Working exposure of software development for a commercial organization.
    • The option to travel occasionally to meet our teams in other sites. 

    At Arm, we are guided by our core beliefs that reflect our rare culture and guide our decisions, defining how we work together to defy ordinary and shape extraordinary:

    We not I

    • Take daily responsibility to make the Global Arm community thrive.
    • No individual owns the right answer. Brilliance is collective.
    • Information is crucial, share it.
    • Realise that we win when we collaborate — and that everyone misses out when we don’t.

    Passion for progress

    • Our differences are our strength. Widen and mix up your network of connections.
    • Difficult things can take unexpected directions. Stick with it.
    • Make feedback positive and expansive, not negative and narrow.
    • The essence of progress is that it can’t stop. Grow with it and own your own progress.

    Be your brilliant self

    • Be quirky not egocentric.
    • Recognise the power in saying ‘I don’t know’.
    • Make trust our default position.
    • Hold strong opinions lightly.

    Arm has a responsibility to ensure that all employees are eligible to live and work in the UK.

    #LI-TG1

    ARM Benefits

    Benefits

    Your particular benefits package will depend on position and type of employment and may be subject to change. Your package will be confirmed on offer of employment. Arm’s benefits program provides permanent employees with the opportunity to stay innovative and healthy, ensure the wellness of their families, and create a positive working environment.

    • Annual Bonus Plan
    • Discretionary Cash Award
    • Group Personal Pension Plan with enhanced company contribution
    • Medical, Travel, Health & Life Insurances
    • Holiday, 25 days annual leave with option to buy an additional 5 days per year
    • Sabbatical, 20 paid days every four-year of service
    • Volunteering, One (1) paid working day each year (TeamARM)
    • Varies by location: cycle to work, free car parking, gym on site, team and social events

    About Arm

    Arm® technology is at the heart of a computing and connectivity revolution that is transforming the way people live and businesses operate. From the unmissable to the invisible; our advanced, energy-efficient processor designs are enabling the intelligence in 86 billion silicon chips and securely powering products from the sensor to the smartphone to the supercomputer. With more than 1,000 technology partners including the world’s most famous business and consumer brands, we are driving Arm innovation into all areas compute is happening inside the chip, the network and the cloud.

    With offices around the world, Arm is a diverse community of dedicated, innovative and highly talented professionals. By enabling an inclusive, meritocratic and open workplace where all our people can grow and succeed, we encourage our people to share their unique contributions to Arm's success in the global marketplace.

    About the office

    At our global HQ in Cambridge, England we house the majority of our engineering and our corporate groups that deliver our extraordinary success. As a world-renowned university town, Cambridge boasts both a beautiful countryside and a historical town center. Local activities include punting on the River Cam and the many museums that reside within Cambridge University.

    Cambridge, UK - Global HQ
    Arm Ltd.
    110 Fulbourn Road
    Cambridge
    GB-CB1 9NJ
    See on Google maps