From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 96426 invoked by alias); 6 Jun 2018 18:31:11 -0000 Mailing-List: contact gcc-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-owner@gcc.gnu.org Received: (qmail 95754 invoked by uid 89); 6 Jun 2018 18:30:45 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.6 required=5.0 tests=BAYES_00,FREEMAIL_ENVFROM_END_DIGIT,FREEMAIL_FROM,RCVD_IN_DNSWL_NONE,SPF_PASS,TIME_LIMIT_EXCEEDED autolearn=unavailable version=3.3.2 spammy=1,000,000, H*i:sk:CAJoDaP, measures, H*f:sk:CAJoDaP X-HELO: mail-yb0-f173.google.com Received: from mail-yb0-f173.google.com (HELO mail-yb0-f173.google.com) (209.85.213.173) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Wed, 06 Jun 2018 18:30:23 +0000 Received: by mail-yb0-f173.google.com with SMTP id h141-v6so2316836ybg.4 for ; Wed, 06 Jun 2018 11:30:15 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=OVJeDsvigto1KpdIfq8OH29Bv1lXq8QE0CSOP3JQfoE=; b=XatY6dH/85uQwIFxhsye46M2v9d0v4SJYf8YdeqmhgDt3iiAthU/5SLYHQ5kfkNeFs f46ysxB8e3ILjs45kO7L1zGY0rT+4xuhIr9iw9AL5dAMszbtFuLdnhqyscRmCqzUEp9y 4G/u80wiS+S2wUX2KW59aISbEz1Z0N1GCML5HVZQ7mk0SXPWDLStDwbo0I0NEbjPQpBL d7OCZITMT0cywdNXOqQ/HkHQwO2IJ7NfGcVVRr3jxd3Aly/gzYMy0mQPQacUADhLkwzn K6IfFqCsyeQWdYujShRZOD5viw+r+jiPz+oFvd0wU4wPfdx+DlGizHp0dyVUeOHc+AHQ Abog== X-Gm-Message-State: APt69E08Evv7fRM1BIE4MFii+qan0IFmACzgBA5QY4n2X59psszWY/nR m2UIVi6aZlp6/9fWXU8geV0eY2plK2uOAtCtPbA= X-Google-Smtp-Source: ADUXVKLZt2aI/HyKdzsLOO9oROo9RabJQEULoZ6BvktCiCLxOxGkM5esc5gqZmivTXzh9kqdchifvaFjIkmwaOEM8Yg= X-Received: by 2002:a25:b7d1:: with SMTP id u17-v6mr682865ybj.440.1528309813725; Wed, 06 Jun 2018 11:30:13 -0700 (PDT) MIME-Version: 1.0 Received: by 2002:a5b:4cc:0:0:0:0:0 with HTTP; Wed, 6 Jun 2018 11:30:13 -0700 (PDT) In-Reply-To: References: <01126195-f718-7dd0-063b-6997e5b82559@molgen.mpg.de> From: Ryan Burn Date: Wed, 06 Jun 2018 21:10:00 -0000 Message-ID: Subject: Re: How to get GCC on par with ICC? To: Dmitry Mikushin Cc: Paul Menzel , GCC Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-IsSubscribed: yes X-SW-Source: 2018-06/txt/msg00083.txt.bz2 One case where ICC can generate much faster code sometimes is by using the nontemporal pragma [https://software.intel.com/en-us/node/524559] with loops. AFAIK, there's no such equivalent pragma in gcc [https://gcc.gnu.org/ml/gcc/2012-01/msg00028.html]. When I tried this simple example https://github.com/rnburn/square_timing/blob/master/bench.cpp that measures times for this loop: void compute(const double* x, index_t N, double* y) { #pragma vector nontemporal for(index_t i=3D0; i wro= te: > Dear Paul, > > The opinion you've mentioned is common in scientific community. However, = in > more detail it often surfaces that the used set of GCC compiler options > simply does not correspond to that "fast" version of Intel. For instance, > when you do "-O3" for Intel it actually corresponds to (at least) "-O3 > -ffast-math -march=3Dnative" of GCC. Omitting "-ffast-math" obviously > introduces significant performance gap. > > Kind regards, > - Dmitry Mikushin | Applied Parallel Computing LLC | > https://parallel-computing.pro > > > 2018-06-06 18:51 GMT+03:00 Paul Menzel : > >> Dear GCC folks, >> >> >> Some scientists in our organization still want to use the Intel compiler, >> as they say, it produces faster code, which is then executed on clusters. >> Some resources on the Web [1][2] confirm this. (I am aware, that it=E2= =80=99s >> heavily dependent on the actual program.) >> >> My question is, is it realistic, that GCC could catch up and that the >> scientists will start to use it over Intel=E2=80=99s compiler? Or will I= ntel >> developers always have the lead, because they have secret documentation = and >> direct contact with the processor designers? >> >> If it is realistic, how can we get there? Would first the program be >> written, and then the compiler be optimized for that? Or are just more G= CC >> developers needed? >> >> >> Kind regards, >> >> Paul >> >> >> [1]: https://colfaxresearch.com/compiler-comparison/ >> [2]: http://citeseerx.ist.psu.edu/viewdoc/download?doi=3D10.1.1.679 >> .1280&rep=3Drep1&type=3Dpdf >> >>