From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtp-out2.suse.de (smtp-out2.suse.de [195.135.223.131]) by sourceware.org (Postfix) with ESMTPS id AAF773857BA6 for ; Wed, 13 Mar 2024 13:54:55 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org AAF773857BA6 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=suse.cz Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=suse.cz ARC-Filter: OpenARC Filter v1.0.0 sourceware.org AAF773857BA6 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=195.135.223.131 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1710338097; cv=none; b=p1F3PbRt54nosV8mll7aSxRgaIcGk7SIRcDq7CL4P8t8eyc7e8e83moLtrXuktWX1gSIV006hxVpN/mw6TptnEo8poBWw+p4ENrqdBWgQePrSVUceLhGcTwlsGfkZMvyBX32ifkwqAmXBs+n2m3Hyz9pnAZhYYhM+xacB5u8vBY= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1710338097; c=relaxed/simple; bh=n09kdLjON6J6ZiD8wwmrsju7pmX3rja083vNsMdUNRw=; h=DKIM-Signature:DKIM-Signature:DKIM-Signature:DKIM-Signature:From: To:Subject:Date:Message-ID:MIME-Version; b=J4dHwV2HO8h5g6wEajs32nnEOH0I9RdzwyHllOvn8/Ge/O2eASZHY6yNcY0HpxRrNU+ucaxLTHQT2ole9oQDhma2PKVauwzmlRv+v97WqyVwskKlI+7yVOnJAID1ndOIhopz9LkLs4p091YByAK+Kw6X+7uq8RGpf4xwHTX3GxE= ARC-Authentication-Results: i=1; server2.sourceware.org Received: from imap1.dmz-prg2.suse.org (imap1.dmz-prg2.suse.org [IPv6:2a07:de40:b281:104:10:150:64:97]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by smtp-out2.suse.de (Postfix) with ESMTPS id 287C81F7CD; Wed, 13 Mar 2024 13:54:53 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.cz; s=susede2_rsa; t=1710338094; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=42wWnTEoPUhUQSIZtGaq2K6AK17UtKrWwM1MAbz4vys=; b=CB5FxeTgBHZOFXtfKfm3X54z179QLp4frzWrI/+xmcxRM7l5G7KaYjYDtq40Om9lHqyvZQ 1dPjUIzNRsivStXpX/F+M/BAn2rxPFLhomA38vAok3oBnaRI6EL45oMiWfyJUYOAENjjJR pQS7/zv43iZndtbmjERJMAv/7kI/7F0= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.cz; s=susede2_ed25519; t=1710338094; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=42wWnTEoPUhUQSIZtGaq2K6AK17UtKrWwM1MAbz4vys=; b=0GK8RCKk53PnjhSsYRU8WxmR4PtCztalaOijaEXYRm14wnkLfDuhbYJj1ofSgORYaaVYzs mRzeCjjbEcBbwiDg== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.cz; s=susede2_rsa; t=1710338093; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=42wWnTEoPUhUQSIZtGaq2K6AK17UtKrWwM1MAbz4vys=; b=MU0obwmcZus1U0IFploI2Ik1ZcRAb8cuQX/Sj6bPi4TbH3EAbj5XgML3yQ/OIglg1Ulvi8 f2bUNIywN55l2KloIwW/MrSI54pgzZNUU54sjcJtoyvyOvnwD9oXTBLVJzdSeHizRqBTfB dMTP2Lp78/ISYPss/gCoPZuH/OCSXfE= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.cz; s=susede2_ed25519; t=1710338093; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=42wWnTEoPUhUQSIZtGaq2K6AK17UtKrWwM1MAbz4vys=; b=fv+QYOFLmy4tzuLHqpwiPXOO/xPlfnrggf9H5n8MsWaT64r9f2iVB+3ph8bzBgw5VOkZDQ Zt9L3CLyDlBM8sCg== Received: from imap1.dmz-prg2.suse.org (localhost [127.0.0.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by imap1.dmz-prg2.suse.org (Postfix) with ESMTPS id 21F8C1397F; Wed, 13 Mar 2024 13:54:53 +0000 (UTC) Received: from dovecot-director2.suse.de ([2a07:de40:b281:106:10:150:64:167]) by imap1.dmz-prg2.suse.org with ESMTPSA id mRBGCC2w8WWGVQAAD6G6ig (envelope-from ); Wed, 13 Mar 2024 13:54:53 +0000 From: Martin Jambor To: Abhinav Gupta Cc: Thomas Schwinge , GCC Mailing List Subject: Re: GSoC In-Reply-To: References: User-Agent: Notmuch/0.38.2 (https://notmuchmail.org) Emacs/29.2 (x86_64-suse-linux-gnu) Date: Wed, 13 Mar 2024 14:54:52 +0100 Message-ID: MIME-Version: 1.0 Content-Type: text/plain X-Spam-Level: Authentication-Results: smtp-out2.suse.de; dkim=pass header.d=suse.cz header.s=susede2_rsa header.b=MU0obwmc; dkim=pass header.d=suse.cz header.s=susede2_ed25519 header.b=fv+QYOFL X-Rspamd-Server: rspamd2.dmz-prg2.suse.org X-Spamd-Result: default: False [-2.51 / 50.00]; RCVD_VIA_SMTP_AUTH(0.00)[]; RCVD_COUNT_THREE(0.00)[3]; MID_RHS_MATCH_FROMTLD(0.00)[]; TO_DN_ALL(0.00)[]; DKIM_TRACE(0.00)[suse.cz:+]; MX_GOOD(-0.01)[]; NEURAL_HAM_SHORT(-0.20)[-1.000]; FREEMAIL_TO(0.00)[gmail.com]; FROM_EQ_ENVFROM(0.00)[]; MIME_TRACE(0.00)[0:+]; INTRODUCTION(2.00)[]; BAYES_HAM(-3.00)[100.00%]; ARC_NA(0.00)[]; R_DKIM_ALLOW(-0.20)[suse.cz:s=susede2_rsa,suse.cz:s=susede2_ed25519]; FROM_HAS_DN(0.00)[]; RCPT_COUNT_THREE(0.00)[3]; FREEMAIL_ENVRCPT(0.00)[gmail.com]; TO_MATCH_ENVRCPT_ALL(0.00)[]; TAGGED_RCPT(0.00)[]; MIME_GOOD(-0.10)[text/plain]; NEURAL_HAM_LONG(-1.00)[-1.000]; DNSWL_BLOCKED(0.00)[2a07:de40:b281:104:10:150:64:97:from]; DKIM_SIGNED(0.00)[suse.cz:s=susede2_rsa,suse.cz:s=susede2_ed25519]; DBL_BLOCKED_OPENRESOLVER(0.00)[suse.cz:dkim,suse.cz:email]; FUZZY_BLOCKED(0.00)[rspamd.com]; RCVD_TLS_ALL(0.00)[] X-Spam-Score: -2.51 X-Rspamd-Queue-Id: 287C81F7CD X-Spam-Status: No, score=-5.1 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,KAM_ASCII_DIVIDERS,KAM_SHORT,SPF_HELO_NONE,SPF_PASS,TXREP,T_SCC_BODY_TEXT_LINE autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: Hello, On Tue, Mar 12 2024, Abhinav Gupta wrote: > Hi! Thank you for replying to my request! > I looked at all the links you provided in the reply and read the > paper cited on the GCC page for GSoC. I also looked into the rust > frontend project during this time, and the Offloading project > interests me more, so I will focus solely on it in the remaining seven > days before the deadline for GSoC application submission. AFAIU, in five days (from now) the application period *opens*, the deadline is 2nd April. Still it is good idea not to lose any time. > Are there other resources I can look at to better understand the whole > process? Reading the git commit on the website is proving to be very > slow. I think the git commit about Intel MIC would be like a > "template" in loose terms to implement the host-ISA mode at least, but > for the libgomp plugin, I need a better understanding. You need to understand how OpenMP programs are internally represented. Look at the following (hopefully correct, at least as long as you try it on a system without any Offloading enabled) simple testcase for OpenMP target construct: ---------------------------------------------------------------------- #include volatile int v = 1; int main (int argc, char **argv) { int i = v; #pragma omp target map(to:i) { printf ("OpenMP target hello world, i is: %i\n", i); } return 0; } ---------------------------------------------------------------------- and compile it with: gcc -fopenmp omptgt-hello.c -O2 -fdump-tree-optimized and then look at the generated optimized dump. This should give you an idea how OpenMP regions are internally represented (as outlined functions) and how calls into libgomp, the run-time library doing a lot of the magic, look like. You can try to do more similar exercises with more OpenMP testcase which you can find in sub-directory libgomp/testsuite/libgomp.c of in the GCC repository. And then you should perhaps have a look into libgomp itself (you'll find it in libgomp sub-directory) how GOMP_target_ext is implemented - though don't worry if you don't understand many of the details, it is complex stuff. At this point hopefully more of the contents of the Offloading wiki page will make sense. Again, ask on the mailing list if you have any specific questions. Good luck, Martin > Thanking you > Abhinav > > > On Thu, 7 Mar 2024 at 20:37, Martin Jambor wrote: >> >> Hello, >> >> On Wed, Mar 06 2024, Abhinav Gupta via Gcc wrote: >> > Dear GCC Community, >> > I hope this email finds you well. My name is Abhinav Gupta. I am a >> > 3rd-year student at IIT Tirupati pursuing a bachelor's degree in >> > computer science and engineering. I am writing to express my interest >> > in contributing to the GCC project under GSoC. >> >> We are very happy that you find contributing to GCC interesting. >> >> > I am interested in two projects - Offloading to a separate process on >> > the same host, I am already working in parallel computing, >> > specifically parallelising tensor algorithms using various techniques >> > as part of my research project at IIT Tirupati. Although this is not >> > directly related to compilers, I will be able to get going with the >> > project quickly. >> >> I'd personally very much like to see this project implemented. There is >> a lot of information on offloading at >> https://gcc.gnu.org/wiki/Offloading >> >> To give you a bit more context where the idea comes from, it was first >> thought of in email thread starting with >> https://gcc.gnu.org/pipermail/gcc-patches/2022-October/603984.html and >> the patch that was "scrubbed" from the email archive eventually became >> commit >> https://gcc.gnu.org/cgit/gcc/commit/?id=e4cba49413ca429dc82f6aa2e88129ecb3fdd943 >> >> I hope these pointers will further help help you find out where to look >> when planning the project. If you need more help, please feel free to >> ask (I'm CCing Thomas who then is perhaps best placed to answer). >> >> > The second project is Rust Front-End - both the BIR location support >> > and rustc testsuite adapter are of interest to me, >> >> Please note that Rust-GCC projects are a bit special in the sense that >> they are often discussed primarily on Zulip of the gcc-rust team: >> >> https://gcc-rust.zulipchat.com/ >> >> So you may want to reach out to them there as well. >> >> > having worked on >> > compiler front ends as part of my college's compiler design course >> > combined with my experience in working with large libraries written in >> > C++ (such as CTF) I believe that these two projects are something that >> > I can do. >> >> You seem to be quite ready! >> >> > >> > Proposed Timeline: >> > I can start working as soon as my end-semester exams finish, i.e. 9th >> > May 2024, and continue to work for however long it requires me to >> > complete the project. >> > Week 1-2 -> Knowing the existing code and understanding how it works. >> >> Right, but please try to do a bit of this, at least on the high level, >> also now when preparing the proposal. There will be lots to learn in >> the first weeks even so. Mainly because... >> >> > Week 3-8 -> Working on the implementation of whichever project we >> > decide to move forward with >> > Week 9-12 -> Testing and creating understandable documentation for the same. >> > >> > This is a very rough timeline, >> >> ...eventually the milestones in the application will have to be more >> specific, mainly to demonstrate you have basic understanding of the >> proposed project. >> >> > and I will refine it further as we >> > discuss the project idea. This email is more of a call for guidance >> > than an application, and I would appreciate any feedback you give me. >> >> This is a very good start. >> >> Good luck! >> >> Martin