Click here to Skip to main content
15,867,308 members
This competition has ended

The Great Cross-Architecture Challenge

And we're done!

Judging has commenced and we'll be awarding the spot prize winners and the grand prize winners soon. Best of luck to everyone who entered. Thank you for your amazing work!

Be the next oneAPI Hero...
$41,000 in prizes!

Calling all C++, DPC++ and CUDA developers:

You write awesome code, but does your code take full advantage of all the CPUs, GPUs, FPGA and other accelerators you have? This challenge will focus on fast, efficient future-ready cross-architecture development using Data Parallel C++ (DPC++). No more being tied to proprietary languages that limit your ability to innovate on new hardware.

CodeProject.com, through sponsorship from Intel, is offering over $40,000 in prizes for the oneAPI Cross Architecture challenge as well as once in a lifetime opportunities like CERN openlab Internship and a chance to work on a project with Argonne National Laboratory.

 

Register

The Prizes

  • 3 trips to CERN for a special tour, or $5,000 cash
     
  • A Summer CERN openlab internship (in person or virtual), or $8,000 in cash.
     
  • Participate in a oneAPI related project at Argonne National Laboratory in IL, USA (in person or virtual), or $8,000 in cash.
     
  • ...plus a chance to win one of 20 $500 cash spot prizes

Worried about travel? Winners can choose travel, virtual (where applicable) or they can simply take the cash! Please see the rules for details. Note that all trips are subject to travel restrictions that are in place at the time of travel.
 

The Challenge

Here's how to win:

Register to Participate and Win

It's simple and will take no longer than 38 seconds.


Register

Port or Create a New App

Port an existing C/C++ CUDA app to oneAPI using the DPC++ Compatibility Tool
Read this article: Port a CUDA app to oneAPI and DPC++ in 5 minutes  or Watch this video.

Or...

Create a new oneAPI application. Take as long as you need, but keep an eye on the clock.
Read this article: 5 minutes to your first oneAPI app on DevCloud or Watch this video.
 

Develop or Run your App on DevCloud

You get tons of free access to an awesome array of hardware and software on which to experiment. Read up on how to Get started with Intel DevCloud for oneAPI

Post your entry to DevMesh by February 22

Post your entry on DevMesh and then update your challenge registration with the URL of your entry. You have until midnight (US Pacific time) on 22nd of February 2021.

Click on "Your Entry" at the top right of this page to enter your DevMesh post into this contest and you're done!

Sounds easy? It is!

There are some caveats:
  1. Be sure your code is executable and is running on DevCloud

  2. Be sure to post the project on DevMesh

  3. You must demonstrate the use of cross-architecture computing. Don't just stick to using a CPU - branch out and throw something at a GPU or FPGA. The libraries make it easy. Read this article: Use oneAPI to make your C++ application GPU aware

  4. The code for your entry may be hosted on GitHub, GitLab, BitBucket, Azure DevOps or other accessible source code repository to allow judges to review code.

The Rules

Cloud AI Challenge Terms & Conditions

These rules (and the CodeProject® Terms of Use and the CodeProject Contributors Agreement) govern the The Great Cross-Architecture Challenge (the "Contest") and set out the terms and conditions between CodeProject and its affiliates ("CodeProject"), Intel Corporation and its affiliates (“Intel” or “Sponsor”) (collectively with CodeProject, “us/we”) and each participant ("participant", "or "you"). A submission to this Contest constitutes your acceptance of these Official Contest Rules (the "Rules").

1.  How to Enter: CodeProject is administering the Contest on behalf of Sponsor and Prizes (as defined below) will be awarded based on the results of judging all valid entries against the criteria established in these Rules or based on a random number generator for the spot prizes.

The Contest begins on 10 Nov 2020 at 12AM US Eastern time and ends on 22 Feb 2021 at midnight US Eastern Standard Time (“Contest Period”). CodeProject’s clock is the official time for the Contest. All entries must be submitted during this period in order to qualify. Participants must comply with the submission format provided by CodeProject on its website. Submissions must be in the English language.

No purchase is necessary to enter the Contest or to be eligible to win a Prize.

We are not responsible for lost, illegible, incomplete, mutilated or stolen entries; errors appearing within these Rules, in any Contest related advertisements or other materials; or other errors of any kind whether mechanical, human, electronic or otherwise. Entries that are late, illegible, incomplete, unreadable, damaged, delayed, lost, tampered with, incomprehensible, forged, mutilated, misdirected, inaccurate, unintelligible or otherwise not in compliance with these Rules will be disqualified. You must provide all of the requested information to submit a valid entry. Only those who live in jurisdictions in which this Contest is legal may enter. Prizes may be withheld or awarded to another eligible registrant if these Rules are breached. Prizes may not be exactly as shown. A reasonable US dollar equivalent in lieu of the Prize may also be awarded at the sole discretion of CodeProject.

Entries shall be deemed to be submitted by the authorized account holder of the email address submitted at the time of entry unless clearly indicated otherwise. "Authorized account holder" is defined as the natural person who is assigned to an email address by an internet access provider, online service provider, or other organization (e.g. business, educational institution, etc.) that is responsible for assigning email addresses for the domain associated with the submitted email address.

2. Eligibility: This Contest is open to software development professionals & enthusiasts who are of the age of majority in their jurisdiction of residence. Residents of Quebec and of the following countries are ineligible to participate due to legal constraints: Cuba, Iran, Iraq, Libya, North Korea, Saudi Arabia, Sudan, Syria and Brazil. All national and local laws and regulations of the participant’s country of residence apply. Residents of countries under U.S. embargo are not eligible to enter. Employees, officers and representatives (and members of their immediate families and those living in the same household of each) of CodeProject, its parents, subsidiaries and affiliated companies, advertising and promotion agencies, Intel Corporation, the European Organization for Nuclear Research ("CERN"), the Argonne National Laboratory ("Argonne"), and any company involved in the design, execution, production of this Contest ("Contest entities") are ineligible. Intel is committed to compliance with all applicable laws, regulations, policies and ethics rules. Intel seeks no promises or favoritism for itself or any of its affiliates in exchange for any item received through this Contest. By your acceptance, you agree that the Contest does not violate any law, regulation or policy applicable to you. CodeProject reserves the right to verify participant eligibility at any time and all participants may be required to provide verification of eligibility. Void where prohibited.

Grand Prize: CERN openlab Internship: To be eligible for the CERN openlab internship during 2021, you need to meet the following requirements by the time the internship begins:

  • Completed three years of full-time education in a bachelor or master degree university program in computer science, engineering, mathematics, or physics;
  • Be a registered student or graduate between May and September of 2020;
  • Meet any CERN openlab specific requirements; and
  • Be interested in working on advanced IT projects during the internship.

Important exclusion: Those who previously worked at CERN or CERN openlab (as a user, staff member, or student) are not eligible for the internship.

Grand Prize: Chance to work on a oneAPI related project at Argonne for (8 weeks summer 2021): To be eligible for to work on a oneAPI project with Argonne you need to meet the following requirements by the time the placement begins:

  • Currently be a US citizen, permanent resident or be eligible to work in the United States (waived for remote work)
  • Completed three years of full-time education in a bachelor or master degree university program in computer science, engineering, mathematics, or physics;
  • Be a registered student or graduate between May and September of 2020;
  • Meet any Argonne specific requirements; and
  • Be interested in working on advanced IT projects during the placement.

The Summer working project is sponsored by Intel will be an eight week project in collaboration with Argonne National Laboratory. It will include an $8,000 travel stipend (or cash if travel is not possible due to Covid-19).

Important exclusion: Current and previous paid staff at Argonne who worked at Argonne any time prior to the end of this contest are not eligible for this prize.

Note that all trips are subject to travel restrictions that are in place at the time of travel

3.  Determination of winners:

Up to $US41,000 in prizes will be awarded, but only a valid entry in compliance with these Rules is eligible to win a Prize. 

Entries are limited to 1 entry per person. Duplicate entries and entries with falsified information will be disqualified. 

Entries must satisfy the following criteria:

  • The code for the entry should be executable and running on DevCloud

  • The entry must be posted on DevMesh – we want to know not just what you did… but how you did it!

    • If your entry is a CUDA port, you must include a description of your experience moving your CUDA or C++ code to DPC++ (Data Parallel C++)

    • If you are creating a new app, you must include a description of your DPC++ development experience (the good, the bad, the ugly, and the fun lessons learned).

  • Must demonstrate the use of heterogeneous computing

  • Entry code should be hosted on GitHub, GitLab or other publicly accessible source code repository to allow judges to review code.


Entries will be judged based on the following elements:   

  • Most innovative. Meaning: most imaginative use of heterogeneous computing. The clear application of imagination in the solution

  • Most impact on humanity. Does your solution impact health? Food production? Energy? The environment? Education or social good? Technology that enriches our lives.

  • Best use of heterogeneous computing. Does your solution clearly take advantage of the opportunities to write code that can seamlessly take advantage of available accelerator hardware?

  • Was the application generally a useful application for its target audience

  • The general level of coding expertise

  • The quality (not quantity) of the explanation of the application and its purpose

In addition, the votes and comments each submission receives on the CodeProject website may be taken into account. Judges decisions are final. You may withdraw your submission at any time by notifying CodeProject. Your right to win a Prize is terminated if a submission is withdrawn.

Winners will be announced on Mar 8, 2021. Winners will be notified by email following selection and may also be announced in the Daily Build newsletter or other sections of CodeProject.com. We shall have no liability for any winner notification that is lost, intercepted or not received by the potential winner for any reason and we are not obligated to leave voice mail, answering machine or other message. Proof of response by a potential winner does not constitute proof of receipt by us.

All winners will be notified via email. If after seven (7) days of the second notification to the winner, no acknowledgement or response is received, the Prize is forfeited, and CodeProject will select another winner.

Each winner acknowledges that, if and to the extent that CodeProject is legally obligated to provide a third party with information about any Prize claimed by a winner, CodeProject shall be entitled to do so.

4.  Ownership and Publicity: CodeProject does not claim ownership of your submission to the Contest (please see the “Ownership” section in the CodeProject Contributors Agreement), but by submitting an entry, you grant CodeProject, and Intel, its affiliated companies and necessary sub-licensees a worldwide, perpetual, royalty-free, irrevocable, non-exclusive, fully assignable and transferable right and license, to edit, adapt, translate, reformat your submission, to post your submission (e.g. publish, display, perform, digitally perform) to do what CodeProject feels it needs to do to manage and update the Site, to make and maintain back-up and archival copies, and to make your submission available to End Users in accordance with these Rules, CodeProject’s Contributors Agreement, and the specific EULA that you select.

By participating in the Contest, you expressly allow CodeProject and Intel, to use and publish, in any medium or format, your name, city and country of residence, voice, statements, video, photographs and other likenesses in connection with any promotion, advertising or publicity without further consideration or notice to you. Any participant’s personal information may be used by CodeProject in order to conduct the Contest. By participating in the Contest, the participant agrees to the use of the participant’s personal information in accordance with CodeProject’s privacy policy, which can be found at http://www.codeproject.com/info/privacy.aspx.

5.  Participant Warranties:

By submitting an entry to the Contest, you warrant that your submission:

  1. is a new article or a new version of an article and has not been published previously on Intel DevMesh;

  2. does not contain any content that infringes on any third party rights, including Intellectual Property (IP) rights, and that you own or otherwise have all rights necessary to make your submission, including any and all IP rights;

  3. does not disclose any information which would constitute a violation of any confidentiality obligation;

  4. does not violate any agreement that you have with any third party; and

  5. does not contain any viruses, worms, spyware, or other components or instructions that are malicious, deceptive, or designed to limit or harm the functionality of a computer or computer system.

6.  Prizes:

All prizes below are awarded as consideration of the technical work of the winners, in recognition of personal merit, and to encourage future technological development for the benefit of society as a whole.

As described below, there will be up to $41,000 in Contest prizes (“Prize” or “Prizes”) awarded.

Entries must be of an acceptable quality, fulfil requirement outlines for the article topic as determined solely by CodeProject, and abide by the Terms of this Contest. The total approximate retail value (“ARV”) of all Prizes will not exceed forty one thousand five hundred ($41,000) USD. All applicable federal, state, and local tax laws apply. The value for any prize is based on the ARV at the beginning of the Contest Period. Because the ARV for any Prize may fluctuate, CodeProject has the sole right to determine the value of any Prize, or its cash equivalent, at the time that any prize is awarded.

Substitution or transfer of Prizes is not allowed. In CodeProject’s sole discretion, it may award a substitute prize of equal or greater value. The winner accepts responsibility for all federal, state and local taxes and fees in connection with the Prizes. If you are a potential winner, we may require you to sign an Affidavit of Eligibility, Liability/Publicity Release and a W-9 tax form or W-8 BEN tax form within seven (7) business days of notification. In certain countries, such as Canada, a winner may be required to correctly answer a skill testing question before becoming eligible to claim a Prize.

Apart from any Prize that may be awarded as part of the Contest, no compensation (monetary or otherwise) will be paid for your Contest submission. We are not responsible for Contest entries not received due to lost, failed, delayed or interrupted connections or miscommunications, or other electronic malfunctions. We are not responsible for incorrect or inaccurate entry information, whether caused by you or any other persons or by any of the equipment or programming associated with or utilized in the Contest.

The Prize will be shipped to the winner’s residence using standard delivery. CodeProject and Intel are not responsible for a Prize if it is lost, stolen or damaged during or after shipping, and it will not be replaced by CodeProject or Intel.

7.  Warranties and Disclaimers: Prizes come with the standard manufacturer warranty only (if applicable), but Prizes are awarded “AS IS”. To the fullest extent allowable by law, CodeProject and Intel specifically disclaim any representations or warranties, express or implied, regarding the Contest or the Prizes including any implied warranty of merchantability or fitness for a particular purpose and implied warranties arising from course of dealing or course of performance.

8.  Release of Liability, Issues of Law and Indemnity: By participating in the Contest, all participants release CodeProject and Intel, their affiliates, partners, subsidiaries, officers, directors, agents, employees and all entities associated with the development and execution of this promotion from any and all liability with respect to and in any way arising from participating in this promotion, acceptance or use of a Prize. CodeProject and Intel assume no responsibility for incorrect or inaccurate capture of entry information, technical malfunctions, human or technical error, lost, delayed or garbled data or transmissions, omission, interruption, deletion, defect or failures of any telephone or computer line or network, computer equipment, software or any combination thereof. Entry materials/data that have been tampered with or altered are void. If for any reason, in the opinion of CodeProject in its sole discretion, the Contest is not capable of running as originally planned, or if the administration, security, fairness, integrity or the proper conduct of the Contest is corrupted or adversely affected, including by reason of infection by computer virus, bugs, tampering, unauthorized intervention, fraud, technical failures or any other causes beyond its control, CodeProject reserves its right to cancel, terminate, modify, amend, extend or suspend the Contest including cancelling any method of entry, and select a winner from previously received eligible entries. CodeProject reserves its right in its sole discretion to disqualify any individual it finds to be tampering with the entry process or the operation of the Contest or to be violating the letter or spirit of the Rules or is otherwise acting in a disruptive manner. CodeProject reserves its right to seek remedies and damages to the fullest extent of the law for any attempts to deliberately damage the Contest web site or to undermine the legitimate operation of this Contest. CodeProject and Intel shall not be held responsible for any errors or negligence that may arise or occur in connection with the Contest including any damage to an entrant's computer equipment, system, software or any combination thereof, as a result of their participation in this Contest or from downloading any material from the Contest website where applicable. All participants agree to fully indemnify and hold harmless CodeProject and Intel from any and all claims by third parties relating to the Contest without limitation.  

9. Generally: We may make changes to these Rules at any time without notice to you. Participating in the Contest or accepting a Prize will constitute acceptance of the revised rules. These Rules prevail in the event of any conflict or inconsistency with any other communications, including advertising or promotional materials.

All trade names, trademarks, registered trademarks, product names and company names or logos mentioned or displayed in connection with the Contest are the property of their respective owners and may not be used in any manner whatsoever without the express written consent of their respective owners.

If, for reasons beyond CodeProject’s control (including, but not limited to, tampering or computer virus infection), the Contest is not capable of running as originally planned, CodeProject, at its sole discretion reserves the right to cancel or modify the Contest, without liability or further notice. We will not be responsible for lost, late, misdirected, damaged, or illicit submissions, or for Internet, computer hardware and software, phone, and other technical errors, omissions malfunctions, and delays. Entries are void if they contain material typographical or other errors. All entrants agree to comply fully with each provision in these Rules. Any person attempting to defraud or in any way tamper with this Contest and any person who does not comply with these Rules, will be ineligible for any Prize(s) and may be prosecuted to the fullest extent of the law.

For any feedback or questions regarding the Contest or the Prizes, please contact contest@codeproject.com.

10. Winners' List: For a list of Prize winners, please contact contest@codeproject.com with the Subject Line “The Great Cross-Architecture Challenge” by Mar 22, 2021. 

Discussions

 
GeneralFive continents? Pin
LecrisUT5-Apr-21 17:38
LecrisUT5-Apr-21 17:38 
GeneralRe: Five continents? Pin
PIEBALDconsult6-Apr-21 3:07
mvePIEBALDconsult6-Apr-21 3:07 
GeneralRe: Five continents? Pin
Chris Maunder6-Apr-21 3:12
cofounderChris Maunder6-Apr-21 3:12 
GeneralRe: Five continents? Pin
PIEBALDconsult6-Apr-21 3:31
mvePIEBALDconsult6-Apr-21 3:31 
GeneralRe: Five continents? Pin
feliciousity25-Mar-23 17:26
feliciousity25-Mar-23 17:26 
GeneralRe: Five continents? Pin
PIEBALDconsult25-Mar-23 18:25
mvePIEBALDconsult25-Mar-23 18:25 
GeneralRe: Five continents? Pin
Chris Maunder27-Mar-23 4:57
cofounderChris Maunder27-Mar-23 4:57 
GeneralRe: Five continents? Pin
PIEBALDconsult27-Mar-23 9:32
mvePIEBALDconsult27-Mar-23 9:32 
GeneralRe: Five continents? Pin
Chris Maunder27-Mar-23 14:16
cofounderChris Maunder27-Mar-23 14:16 
GeneralRe: Five continents? Pin
feliciousity29-Mar-23 5:56
feliciousity29-Mar-23 5:56 
NewsAnd we have our winners! Pin
Chris Maunder25-Mar-21 3:28
cofounderChris Maunder25-Mar-21 3:28 
GeneralRe: And we have our winners! Pin
Prilvesh K25-Mar-21 4:33
professionalPrilvesh K25-Mar-21 4:33 
GeneralRe: And we have our winners! Pin
Chris Maunder25-Mar-21 4:35
cofounderChris Maunder25-Mar-21 4:35 
GeneralRe: And we have our winners! Pin
Arthur V. Ratz29-Mar-21 5:29
professionalArthur V. Ratz29-Mar-21 5:29 
Hi Chris,

The last week, I've received your message notifying me that I have won one of the spot prizes $500. Also, you have requested the details for transferring the prize. I've replied your message, submitting the details in the attachment, but still have not received your reply, yet.

Could you contact me regarding this matter, please?

Cheers, Arthur. Smile | :)
GeneralRe: And we have our winners! Pin
Chris Maunder29-Mar-21 7:38
cofounderChris Maunder29-Mar-21 7:38 
GeneralRe: And we have our winners! Pin
Arthur V. Ratz29-Mar-21 7:44
professionalArthur V. Ratz29-Mar-21 7:44 
GeneralRe: And we have our winners! Pin
Shao Voon Wong29-Mar-21 20:08
mvaShao Voon Wong29-Mar-21 20:08 
GeneralRe: And we have our winners! Pin
Chris Maunder31-Mar-21 7:47
cofounderChris Maunder31-Mar-21 7:47 
GeneralRe: And we have our winners! Pin
Prilvesh K31-Mar-21 0:40
professionalPrilvesh K31-Mar-21 0:40 
GeneralRe: And we have our winners! Pin
Chris Maunder31-Mar-21 7:46
cofounderChris Maunder31-Mar-21 7:46 
GeneralRe: And we have our winners! Pin
GuMiner3-Apr-21 7:07
GuMiner3-Apr-21 7:07 
GeneralRe: And we have our winners! Pin
Shao Voon Wong7-Apr-21 2:49
mvaShao Voon Wong7-Apr-21 2:49 
GeneralRe: And we have our winners! Pin
Chris Maunder7-Apr-21 3:29
cofounderChris Maunder7-Apr-21 3:29 
GeneralFinal prize announcements: Mar 25 Pin
Chris Maunder15-Mar-21 11:59
cofounderChris Maunder15-Mar-21 11:59 
GeneralAwaiting results for Spot Prizes and final results! Pin
ranjann1-Mar-21 6:09
ranjann1-Mar-21 6:09 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

Judging Criteria

Entries must satisfy the following criteria:

  • The code for the entry should be executable and running on DevCloud

  • The entry must be posted on DevMesh – we want to know not just what you did… but how you did it!

    • If your entry is a CUDA port, you must include a description of your experience moving your CUDA or C++ code to DPC++ (Data Parallel C++)

    • If you are creating a new app, you must include a description of your DPC++ development experience (the good, the bad, the ugly, and the fun lessons learned).

  • Must demonstrate the use of cross-architecture computing

  • Entry code should be hosted on GitHub, GitLab or other publicly accessible source code repository to allow judges to review code.


Entries will be judged based on the following elements:   

  • Most innovative. Meaning: most imaginative use of cross-architecture computing. The clear application of imagination in the solution

  • Most impact on humanity. Does your solution impact health? Food production? Energy? The environment? Education or social good? Technology that enriches our lives.

  • Best use of cross-architecture computing. Does your solution clearly take advantage of the opportunities to write code that can seamlessly take advantage of available accelerator hardware?

  • Was the application generally a useful application for its target audience

  • The general level of coding expertise

  • The quality (not quantity) of the explanation of the application and its purpose

In addition, the votes and comments each submission receives on the CodeProject website may be taken into account.

The Judges

Maria Girone
CERN
Chief Technology Officer

Maria has a PhD in particle physics. She also has extensive knowledge in computing for high-energy physics experiments, having worked in scientific computing since 2002. Maria has worked for many years on the development and deployment of services and tools for the Worldwide LHC Computing Grid (WLCG), the global grid computing system used to store, distribute, and analyse the data produced by the experiments on the Large Hadron Collider (LHC). In her role as CTO, Maria is managing the overall technical strategy of CERN openlab plans towards R&D in computing architectures, HPC and AI, in collaboration with the LHC experiments for the upgrade programmes for software and computing, promoting opportunities for collaboration with industry.
Erik Lindahl
Professor of Biophysics, Stockholm University
Development team lead GROMACS

Erik Lindahl holds dual professorships in Biophysics at Stockholm University and the KTH Royal Institute of Technology in Stockholm, and leads a research environment at Science for Life Laboratory focused on developing state-of-the-art computational tools to understand the molecular mechanisms of the protein molecules in our cells. Lindahl is a former chair of the PRACE Scientific Steering Committee, lead scientist for the EU BioExcel Center-of-Excellence, director of Bioinformatics at Science for Life Laboratory, and co-director of the Swedish e-Science Research Center.
Simon McIntosh-Smith
Head of the High Performance Computing Group
Professor of High Performance Computing

Simon McIntosh-Smith is the Head of the Microelectronics Group and a Bristol University Business Fellow. He has over fifteen years semiconductor industry experience in many-core microprocessor architecture design at Inmos, STMicroelectronics, Pixelfusion and ClearSpeed and is an expert in performance portability techniques and application-based fault tolerant computing. Simon was the PI of the first Intel Parallel Computing Center (IPCC) in the UK, is a contributor to both the OpenCL and OpenMP parallel programming standards, and a major contributor to the Mantevo mini-app suite of codes, specifically CloverLeaf and TeaLeaf.
Heidi Poxon
Distinguished Technologist
HPE Cray Programming Environment
Hewlett Packard Enterprise

Heidi has 25+ years of experience in HPC, and for more than fourteen years while at Cray/HPE, has worked closely with technical leadership, scientists, and application developers within the HPC industry to understand large-scale application developer needs and to promote a software developer environment that focuses on running real applications at scale. She is the principal designer of Cray’s application parallelization tool, Reveal. Heidi currently leads the technical vision and strategic direction for the HPE Cray Programming Environment, as well as leads the performance tools and HPC application modeling activities for all HPE/Cray systems.
Katherine Riley
Director of Science
Argonne National Laboratory

Katherine Riley is the Director of Science for the ALCF leading a fantastic team of experts in computational science, performance engineering, visualizations, and data sciences. In her new role as Director of Science, Riley leads scientific strategy for the ALCF, ensuring the facility delivers leading-edge computational capabilities and expertise that help advance fundamental discovery and understanding in a broad range of scientific and engineering disciplines.
Michael Wong
Codeplay Software
Distinguished Engineer and Industry Expert

Michael is a Distinguished Engineer at Codeplay Software, a Scottish company that produces compilers, debuggers, runtimes, testing systems, and other specialized tools to aid software development for heterogeneous systems, accelerators and special purpose processor architectures, including GPUs and DSPs. For twenty years, he was the Senior Technical Strategy Architect for IBM compilers. Michael is also Chair of the Khronos C++ Heterogeneous Programming language SYCL, Editor for the Concurrency TS and the Transactional Memory TS, Canadian Head of Delegation to the ISO C++ Standard, Founding member of the ISO C++ Directions group, Director and VP of ISOCPP.org and Chair of all Programming Languages for Canada’s Standard Council.

Resources and Help

In this tab we'll provide a list of resources to help you learn, debug, deploy and enter the challenge.

Examples to Inspire You

oneAPI is a platform that future-proofs your code. Write your code now, and in the future as you gain access to new or more powerful hardware accelerators, your code will be ready to take full advantage of that power.

In thinking about the types of projects to tackle, think about problems that can be parallelized. Anything where one operation needs to be performed many, many times independently across a set of data. Training AI models, signal and image processing, sorting and numerical applications, engineering, physics and biotech... The list is endless.

Some ideas to get you thinking:

  • Face detection from your Amazon Ring home camera using oneAPI

  • "Name that Song" app that compares someone humming a song and compares it to a library of songs using oneAPI (obviously limit this to a predefined set of songs as a proof of concept)

  • ET, asteroid and Exoplanet detection. Take the archive of NASA satellite photos and look for bodies that have moved, or bodies that have regular variability in brightness

  • Showcase converting single thread algorithms to parallel (eg solve the travelling salesman problem more efficiently using hardware acceleration instead of a single CPU)

  • Cat face detection using oneAPI. There's human face detection, but what about detecting who's who in the cat world

  • Zoom echo be gone! Use oneAPI to process an audio feed and remove that awful empty-room zoom call echo. Make people sound their best on calls

  • Use oneAPI to crack encryption.

  • Create a simple - or complex - model to simulate meteorological and / or hydrological events to predict the impact of Climate change.

  • Take the folding@home code and port it to oneAPI.

  • Bridge load calculations. Find a model of the Tacoma bridge and, using oneAPI, simulate the loads on each strut to calculate how much wind was actually needed to knock it down. Alternatively, do this for a building such as the Empire State Building: How much weight can that building actually take? Could it be made 50% taller using the same base?

  • Train a Doom AI player model to be really, really good using oneAPI

  • Assume you have access to a lot of hardware. Where's the sweet spot when it comes to recruiting extra processors to handle sorting tasks using oneAPI.

Also take a look at oneAPI projects on DevMesh for further inspiration.

You must sign in to participate in this contest.
This contest has ended.
11 Nov 2020 - 22 Feb 2021