🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: borland.public.cppbuilder.nativeapi
Article #11573

Re: Poor thread performance on multi-CPU machines

#11573
From: Arnie Mauer
Date: Thu, 05 Feb 2004 16:33
40 lines
2760 bytes
Thanks for your thoughts Bill

"BillT" <billtouch_no_spam@att.net> wrote in message
news:4021a124$1@newsgroups.borland.com...
> Memory allocation is a very likely suspect. If that doesn't prove out,
there
> are a number of performance profilers to help pinpoint the exact nature of
the
> delays.

I got an evaluation of SmartHEAP SMP but we haven't tried it yet.  Code
freeze for our spring release is tomorrow, 2/6, and things have been pretty
hectic.  We allocate almost all of our memory into pools up front so there's
very little done after that.  However, I can't tell what's going on under
the covers with WinSock and ADOExpress/ADO/OLEDB.

We have a profiler, AQTime.  It helps to point out inefficiencies in
functions but doesn't help with thread contention.

> Another place to look is any synchronization between threads. Where on a
> single processor, there may be no contention for any resources because
> everything is single threaded, in a multiprocessor environment, one thread
may
> end up having to wait on another thread to release a common resource thus
> less throughput. Identifying these things unfortunately must be done
manually
> by someone who can live and breathe threads.

What you say is true.  For example, ADO is not thread safe and so we must
syncronize threads that use these components.  Even so, I can't understand
why the app actually runs slower on an SMP machine than on a single
processor box.  I tend to think the problem is really with the memory
allocation.

In any case, we have enough performance for the moment and we have to get
this release out.  We'll probably get back to in in late March or April

Thanks again,

- Arnie
Technical Details
Message-ID: <40227029$1@newsgroups.borland.com>
Path: arc1-ca.pugleaf.net!archiver1.google.com!news2.google.com!news.maxwell.syr.edu!newsfeed00.sul.t-online.de!newsfeed01.sul.t-online.de!t-online.de!newsgroups.borland.com!not-for-mail
References: <3fff05ce$1@newsgroups.borland.com> <4002f804@newsgroups.borland.com> <400300f4@newsgroups.borland.com> <40054215@newsgroups.borland.com> <4021a124$1@newsgroups.borland.com>

Show Full Headers
Complete Article Headers
X-Google-Language: ENGLISH,ASCII-7-bit
X-Google-Thread: 10cc67,6aabc16a59635b8c
X-Google-Attributes: gid10cc67,public
X-Google-ArrivalTime: 2004-02-05 08:40:17 PST
From: "Arnie Mauer" <xxx@nowhere.net>
Newsgroups: borland.public.cppbuilder.nativeapi
References: <3fff05ce$1@newsgroups.borland.com> <4002f804@newsgroups.borland.com> <400300f4@newsgroups.borland.com> <40054215@newsgroups.borland.com> <4021a124$1@newsgroups.borland.com>
Subject: Re: Poor thread performance on multi-CPU machines
Date: Thu, 5 Feb 2004 11:33:43 -0500
Lines: 43
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1158
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1165
NNTP-Posting-Host: 209.140.211.97
Message-ID: <40227029$1@newsgroups.borland.com>
X-Trace: newsgroups.borland.com 1075998761 209.140.211.97 (5 Feb 2004 08:32:41 -0800)
Path: arc1-ca.pugleaf.net!archiver1.google.com!news2.google.com!news.maxwell.syr.edu!newsfeed00.sul.t-online.de!newsfeed01.sul.t-online.de!t-online.de!newsgroups.borland.com!not-for-mail