From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-yw1-x1134.google.com (mail-yw1-x1134.google.com [IPv6:2607:f8b0:4864:20::1134]) by sourceware.org (Postfix) with ESMTPS id F1C493858D37 for ; Thu, 21 Dec 2023 19:32:11 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org F1C493858D37 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=gmail.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org F1C493858D37 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2607:f8b0:4864:20::1134 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1703187133; cv=none; b=CrxXsOJn6TUdiT5zaArlzMzbI+pPmhIGbKyxG/oWKVGlKj0jPWTO1GQ2arbHoT2Pc/n4DM9TpeDdsFivKbJSQeUTEcoetekOCxd1nSV49WcBYhf4/893Sozdm0Ddx+Ue4wMY0MYgf1e/vL9JJqgY2j9O6PR6ZrhQMjU7424J2P8= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1703187133; c=relaxed/simple; bh=NcR5CuMf+tc/BNmdzdbWz9CAgoV42PIOiRFxVjyWDC4=; h=DKIM-Signature:MIME-Version:From:Date:Message-ID:Subject:To; b=BiOyqr3h4/X/DdypvvznD9RRSTOHs+wpteZ1ki9YNwEi2AWcTghxtFJ9kSfg7RAYyaKrER++2ii0rKXEndbbNNL5aSKb4JONfjx2/uQQKiVTJW4Pqt08OhIH/O3+Xw4c+BodFzohXNK/SUpZxu4CdPx6pEBhahnKeN01xRqAWwU= ARC-Authentication-Results: i=1; server2.sourceware.org Received: by mail-yw1-x1134.google.com with SMTP id 00721157ae682-5d05ff42db0so12282017b3.2 for ; Thu, 21 Dec 2023 11:32:11 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1703187131; x=1703791931; darn=gcc.gnu.org; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=g3juWKSuCqBbeNDFvV765JqP6a0IT/nHkgJW6iIN6+E=; b=Cth5/DvizCbMbMpTwEOh64gWS3/Dtm5Lw0YIEtwJHNRz3oHfBjiALRpHqgbXcU//mR a83okF+Bnbv1I9nyhyB4hmDE4UjD018k5QaeHPyMpM9qqhAKJOyW2lvP76vcqXCc22OE PSbOPNa5BNrP/zhp3TlvdqnI7E/UJ9TI43YEYkkvgI5Qrpcj6BgOfo85en+UB9+tSIpN CIZ34z3R3wYAi7Pzl0e3iaIzxo/kcS/rgkNB3t3KOB/YTbYo1k2N7frSqsxTVZOs82NK jB9PzGuQ3rG9badzJmIjkKuyFUjqIwoW22oDUnR1YKVePYCdPxs7R69osuZ46vRv1pzI mUrQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1703187131; x=1703791931; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=g3juWKSuCqBbeNDFvV765JqP6a0IT/nHkgJW6iIN6+E=; b=eF9bBas5qJFRMpWnOX9V+aDAHYhiWM5XUngrqmlGpfDjo8GbZC6T+8BM8Ed953P0s3 BAC25wbDpX8h1wzhIt+YrkugARP4jyPEkP60p+pVpNmK8/ITfnhG0CVndo9t7ioNp2LY Jx5Wf/E++3xb8HLuQs9Vx9hJz6/aKMKr1KKGbVcZmIh7jMcwujBlusKJeYrHi/ZQGqp3 gIHpuSjBQyGzHWS1iKpNcAm9F1ffhD9qtt85c4D9B9Y0fuY6LSQTyF1CVyH9GNPp4jtz Uox8oml8Hu6ESrTszuC50IhsMI0Tg0M75HMTmjHgxSdj4YoYrUF2ogZe/IwKkVVcm63N Gcag== X-Gm-Message-State: AOJu0YyrfIA7div8mzrv5lNQ0F5X7/EA+CnoO1GSFH08admdptGmrnOW AURTG+5pHjzSTXbGo6DVAXNfFxtcfHuBhuFU/8/4+mpGGZE= X-Google-Smtp-Source: AGHT+IGx8dPi3ejE1yTy6Yud7UEv2U1tnTRf8dnPFsAAOfj8PNQ8NIonU/mIY7v03gkLXRYm1nkSR1oRb/jmP0z5jEs= X-Received: by 2002:a81:4e8c:0:b0:5e7:4558:aef9 with SMTP id c134-20020a814e8c000000b005e74558aef9mr307502ywb.22.1703187131111; Thu, 21 Dec 2023 11:32:11 -0800 (PST) MIME-Version: 1.0 From: Aran Nokan Date: Thu, 21 Dec 2023 20:32:00 +0100 Message-ID: Subject: GCC Optimization Levels - Seeking Insights To: gcc-help@gcc.gnu.org Content-Type: multipart/alternative; boundary="000000000000ef9f48060d0a2771" X-Spam-Status: No, score=0.0 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM,HTML_MESSAGE,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS,TXREP,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: --000000000000ef9f48060d0a2771 Content-Type: text/plain; charset="UTF-8" Hello GCC Community, I recently conducted an experiment where I tested the impact of different GCC optimization levels on the performance of a code . I observed that higher optimization levels didn't necessarily result in faster code execution. Is it correct or I have made a mistake? Do we have any other parameters for optimization? My make file was as follows: CC=gcc > CFLAGS_COMMON=-I. > LDLAGS=-lm > DEPS = levmarq.h > OBJ = main.o levmarq.o > > %.o: %.c $(DEPS) > $(CC) -c -o $@ $< $(CFLAGS) $(LDLAGS) > > main: $(OBJ) > gcc -o $@ $^ $(CFLAGS) $(LDLAGS) > > # No optimization > main_no_opt: CFLAGS += -O0 > main_no_opt: $(OBJ) > gcc -o $@ $^ $(CFLAGS) $(LDLAGS) > > # Basic optimization > main_opt1: CFLAGS += -O1 > main_opt1: $(OBJ) > gcc -o $@ $^ $(CFLAGS) $(LDLAGS) > > # Moderate optimization > main_opt2: CFLAGS += -O2 > main_opt2: $(OBJ) > gcc -o $@ $^ $(CFLAGS) $(LDLAGS) > > # High optimization > main_opt3: CFLAGS += -O3 > main_opt3: $(OBJ) > gcc -o $@ $^ $(CFLAGS) $(LDLAGS) > > # Clean rule > clean: > rm -f *.o main main_no_opt main_opt2 main_opt3 > Best regards, Aran --000000000000ef9f48060d0a2771--