X-Recipient: archive-cygwin@delorie.com
DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 0AC7A38582B7
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cygwin.com;
	s=default; t=1693677436;
	bh=ZGEQcw2q4NcnXveqstTP9hRluyoWKXZGvITW0/bddlk=;
	h=Date:Subject:To:References:In-Reply-To:List-Id:List-Unsubscribe:
	 List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:Cc:
	 From;
	b=gdA1bmSbxGVcHUuYLjICrrw2dyGPdAP5XauVSHiwdTVWNqe3U3prxahuU0zkbMj5B
	 qQ96My4PzwjYnCUhXE2KDtw5p9isG0kwTv7HTLlkXXsiXNFLaSD4SEKvrYL9Vo2g47
	 tAlyvLrmaYP9YxNJHIPL/TGAUHYdL1cOsaguhOK4=
X-Original-To: cygwin@cygwin.com
Delivered-To: cygwin@cygwin.com
DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org CC1E33858CDA
X-Authority-Analysis: v=2.4 cv=XZqaca15 c=1 sm=1 tr=0 ts=64f37756
 a=DxHlV3/gbUaP7LOF0QAmaA==:117 a=DxHlV3/gbUaP7LOF0QAmaA==:17
 a=IkcTkHD0fZMA:10 a=6whCB0ajAAAA:8 a=8yAGy4MYwIvsohbVvR0A:9 a=QEXdDO2ut3YA:10
 a=yGKlR3sVXOPn9h0UBopn:22
Message-ID: <2cfbcf8d-911f-a64b-8916-12b005c9f6f6@Shaw.ca>
Date: Sat, 2 Sep 2023 11:56:37 -0600
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: posix thread scaling issue
Content-Language: en-CA
To: cygwin@cygwin.com
References: <550e8950-8f7a-4765-b23e-57d0e710fde0@jeffunit.com>
Organization: Inglis
In-Reply-To: <550e8950-8f7a-4765-b23e-57d0e710fde0@jeffunit.com>
X-CMAE-Envelope: MS4xfOWleDmtvUf0/aqVeiE0zQaOzelI/qe89sPLjgHheNboz01koU/X5feuR+CKA6FjK4YqipTxwVIuqByTpMjYv2z0oB1duk+tT1f0slIc5cgfsRomwk2x
 gjYKnrsn4Kx1yNt2+aG3W1OZiGLBbbZt5r2RHrEl5Clt2neSSW5GKE+pdu4xSjg1TCjB2Sy2Kn7u7JVSHz+UXom12yCvbwrTsrM=
X-Spam-Status: No, score=-4.1 required=5.0 tests=BAYES_00, DKIM_SIGNED,
 DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, NICE_REPLY_A, RCVD_IN_DNSWL_LOW,
 SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.6
X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on
 server2.sourceware.org
X-BeenThere: cygwin@cygwin.com
X-Mailman-Version: 2.1.30
Precedence: list
List-Id: General Cygwin discussions and problem reports <cygwin.cygwin.com>
List-Unsubscribe: <https://cygwin.com/mailman/options/cygwin>,
 <mailto:cygwin-request@cygwin.com?subject=unsubscribe>
List-Archive: <https://cygwin.com/pipermail/cygwin/>
List-Post: <mailto:cygwin@cygwin.com>
List-Help: <mailto:cygwin-request@cygwin.com?subject=help>
List-Subscribe: <https://cygwin.com/mailman/listinfo/cygwin>,
 <mailto:cygwin-request@cygwin.com?subject=subscribe>
From: Brian Inglis via Cygwin <cygwin@cygwin.com>
Reply-To: cygwin@cygwin.com
Cc: Brian Inglis <Brian.Inglis@Shaw.ca>
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: cygwin-bounces+archive-cygwin=delorie.com@cygwin.com
Sender: "Cygwin" <cygwin-bounces+archive-cygwin=delorie.com@cygwin.com>
Content-Transfer-Encoding: 8bit
X-MIME-Autoconverted: from base64 to 8bit by delorie.com id 382HvHkr012780

On 2023-09-02 08:57, jeff via Cygwin wrote:
> I have a program that is embarrassing parallel.
> On my older computer which has an epyc 7302 (16 cores,  32 threads) it scales 
> very well using cygwin, and fully utilized all threads.
> On my new computer which has an epyc 7B13 (64 cores, 128 threads) it does not 
> scale very well.
> 
> According to the windows task manager, it only uses 74% of the cpu resources.
> The time it takes the program to run on windows is 166 seconds.
> Using the same hardware on a recent version of linux, I can get 100% cpu 
> utilization and the program takes 100 seconds to run.
> 
> I suspect there may be something in cygwin that doesn't scale well with lots of 
> posix threads.
> I know this is a bit of an unusual situation, but you can buy a 128 core / 256 
> thread system now.
> 
> Enclosed is the output of cygcheck.
> I updated my version of cygwin to be current as of today, Sep 2 2023.

What Windows edition and version are you running?
For details run:

$ reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion" \
| sed '/^\s\+\.*\s/!d;/^.\{80,\}/d'

Some retail editions limit you to 64 threads and that seems to be your case:

	NUMBER_OF_PROCESSORS = '64'

To make full use of your processors, you may have to upgrade your Windows to a 
commercial licence (and installation) of Windows 10/11 Pro for Workstations, 
enabling server features on non-server "Worskations" ~ HEDTs (High-End 
DeskTops); see:

https://www.anandtech.com/show/15483/amd-threadripper-3990x-review/3

or just run Linux!

Watch out for terms misused like processor == socket on some sites!

Also, you have to consider these are server systems, mainly designed for VM not 
HPC (High Performance Computing) parallelism.

Your older system has higher base and boost/turbo clocks 3.0-3.3GHz: your newer 
system has lower clocks 2.25-2.65/3/3.5GHz which seems to depend on OEM target.

You may also need to upgrade your memory, as each core could run ~10GB/s 
instructions, and these workstations are often provisioned with 128-256GB 
(2-4GB/core), so that may also need a Windows edition upgrade.

-- 
Take care. Thanks, Brian Inglis              Calgary, Alberta, Canada

La perfection est atteinte                   Perfection is achieved
non pas lorsqu'il n'y a plus rien à ajouter  not when there is no more to add
mais lorsqu'il n'y a plus rien à retirer     but when there is no more to cut
                                 -- Antoine de Saint-Exupéry

-- 
Problem reports:      https://cygwin.com/problems.html
FAQ:                  https://cygwin.com/faq/
Documentation:        https://cygwin.com/docs.html
Unsubscribe info:     https://cygwin.com/ml/#unsubscribe-simple

