473,840 Members | 1,558 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

Is DB2 multi-threaded?

Hi Everyone,

It would be a real big help if anyone can shed light on whether DB2 UDB
8.2 on Solaris will make optimum use of a Sun T2000 server. The server
has 1 CPU with 8 cores and each core has 4 threads (32 virtual CPUs).
We are exploring this option againts an equivalent performance pSeries
box. But before we delve deeper, we want some basic info on that.

Any suggestions would be helpful.

Regards,
dotyet

Jan 24 '06 #1
20 5976
dotyet wrote:
Hi Everyone,

It would be a real big help if anyone can shed light on whether DB2 UDB
8.2 on Solaris will make optimum use of a Sun T2000 server. The server
has 1 CPU with 8 cores and each core has 4 threads (32 virtual CPUs).
We are exploring this option againts an equivalent performance pSeries
box. But before we delve deeper, we want some basic info on that.

I think youneed to differentiate between threading on the OS and virtual
CPU's. I know for fact that DB2 exploits virtual CPU's on pSeries and
I'd be surprised if it couldn't exploit it on Sun.
But DB2 on Unix uses processes and is not using multithreading on the OS
level. IDS by contrast is a multithreaded engine.
Again... this has nothing to do with exploitation of virtual CPU's.

Cheers
Serge
--
Serge Rielau
DB2 Solutions Development
DB2 UDB for Linux, Unix, Windows
IBM Toronto Lab
Jan 24 '06 #2
aj
Interesting...T his was the subject of a conversation here awhile back.
How much would DB2 LUW gain by going multithreaded ala IDS rather
than multiprocess?

Don't get me wrong - I'm a former IDS administrator who has switched
my engines completely to DB2 for primarily business reasons, and I
really like both DB2 and Informix. Both products have their pros and
cons. (Again, *not* looking for a flame war!)

However, I used IDS for a long time (10 years) on both HP-UX and Linux.
Once the engine was "settled in" and configured nicely, it was my
experience that stability was just rock solid.

Would IBM ever consider taking DB2 LUW multithreaded?

cheers
aj
Serge Rielau wrote:
dotyet wrote:
Hi Everyone,

It would be a real big help if anyone can shed light on whether DB2 UDB
8.2 on Solaris will make optimum use of a Sun T2000 server. The server
has 1 CPU with 8 cores and each core has 4 threads (32 virtual CPUs).
We are exploring this option againts an equivalent performance pSeries
box. But before we delve deeper, we want some basic info on that.

I think youneed to differentiate between threading on the OS and virtual
CPU's. I know for fact that DB2 exploits virtual CPU's on pSeries and
I'd be surprised if it couldn't exploit it on Sun.
But DB2 on Unix uses processes and is not using multithreading on the OS
level. IDS by contrast is a multithreaded engine.
Again... this has nothing to do with exploitation of virtual CPU's.

Cheers
Serge

Jan 24 '06 #3
fair enough, so can you suggest some method, scripts etc to find out if
we would benefit from those 32 virtual CPUs. I am in process of setting
up the test machine, so maybe another day or 2 till we get a functional
DB2 instance on this machine.

there is one more issue which is showing it's face in this testing
phase. I have configured the kernel parameters using the resource
controls. i am allocating about 25 gb of memory for db2 bufferpools, so
my project.max-shm-memory is set to that number. Now, while altering
the size of a large bufferpool in the sample database, the engine says
that suffiicient memory is not available and the bufferpool size
alteration has been deffered till the next restart of instance. many
times it gives this message even when I am increasing the bufferpool by
a few 100 MBs. The pagesize is 32 K. usage of "immediate" keyword does
not make any difference. Once the DB2 instance is restarted, it works
fine, and does allocate the relevant (increased) bufferpool memory.

This machine will host only one user project and, i have the fair share
scheduler and resource cap deamon disabled.

Am i missing something here?

Regards,
dotyet

Jan 24 '06 #4
fair enough, so can you suggest some method, scripts etc to find out if
we would benefit from those 32 virtual CPUs. I am in process of setting
up the test machine, so maybe another day or 2 till we get a functional
DB2 instance on this machine.

there is one more issue which is showing it's face in this testing
phase. I have configured the kernel parameters using the resource
controls. i am allocating about 25 gb of memory for db2 bufferpools, so
my project.max-shm-memory is set to that number. Now, while altering
the size of a large bufferpool in the sample database, the engine says
that suffiicient memory is not available and the bufferpool size
alteration has been deffered till the next restart of instance. many
times it gives this message even when I am increasing the bufferpool by
a few 100 MBs. The pagesize is 32 K. usage of "immediate" keyword does
not make any difference. Once the DB2 instance is restarted, it works
fine, and does allocate the relevant (increased) bufferpool memory.

This machine will host only one user project and, i have the fair share
scheduler and resource cap deamon disabled.

Am i missing something here?

Regards,
dotyet

aj wrote:
Interesting...T his was the subject of a conversation here awhile back.
How much would DB2 LUW gain by going multithreaded ala IDS rather
than multiprocess?

Don't get me wrong - I'm a former IDS administrator who has switched
my engines completely to DB2 for primarily business reasons, and I
really like both DB2 and Informix. Both products have their pros and
cons. (Again, *not* looking for a flame war!)

However, I used IDS for a long time (10 years) on both HP-UX and Linux.
Once the engine was "settled in" and configured nicely, it was my
experience that stability was just rock solid.

Would IBM ever consider taking DB2 LUW multithreaded?

cheers
aj
Serge Rielau wrote:
dotyet wrote:
Hi Everyone,

It would be a real big help if anyone can shed light on whether DB2 UDB
8.2 on Solaris will make optimum use of a Sun T2000 server. The server
has 1 CPU with 8 cores and each core has 4 threads (32 virtual CPUs).
We are exploring this option againts an equivalent performance pSeries
box. But before we delve deeper, we want some basic info on that.

I think youneed to differentiate between threading on the OS and virtual
CPU's. I know for fact that DB2 exploits virtual CPU's on pSeries and
I'd be surprised if it couldn't exploit it on Sun.
But DB2 on Unix uses processes and is not using multithreading on the OS
level. IDS by contrast is a multithreaded engine.
Again... this has nothing to do with exploitation of virtual CPU's.

Cheers
Serge


Jan 24 '06 #5
dotyet wrote:
fair enough, so can you suggest some method, scripts etc to find out if
we would benefit from those 32 virtual CPUs. I am in process of setting
up the test machine, so maybe another day or 2 till we get a functional
DB2 instance on this machine. When I observed this on the p570 witha business partner in SHanghai a
week ago they were running "topas" to show load. topas gives information
on the virtual CPU's and we could see how they all loaded up as we
increased concurrency. On pSeries we found that virtual CPU's were not
used until CPU utiliation for 4 CPU crossed 50% (an AIX decision).
I assume you have some sort of similar tooling to topas for SunOS?
there is one more issue which is showing it's face in this testing
phase. I have configured the kernel parameters using the resource
controls. i am allocating about 25 gb of memory for db2 bufferpools, so
my project.max-shm-memory is set to that number. Now, while altering
the size of a large bufferpool in the sample database, the engine says
that suffiicient memory is not available and the bufferpool size
alteration has been deffered till the next restart of instance. many
times it gives this message even when I am increasing the bufferpool by
a few 100 MBs. The pagesize is 32 K. usage of "immediate" keyword does
not make any difference. Once the DB2 instance is restarted, it works
fine, and does allocate the relevant (increased) bufferpool memory.

Sorry, I can't help there...
--
Serge Rielau
DB2 Solutions Development
DB2 UDB for Linux, Unix, Windows
IBM Toronto Lab
Jan 24 '06 #6
aj wrote:
Interesting...T his was the subject of a conversation here awhile back.
How much would DB2 LUW gain by going multithreaded ala IDS rather
than multiprocess? Good question. Note that DB2 runs threaded on Windows.
Don't get me wrong - I'm a former IDS administrator who has switched
my engines completely to DB2 for primarily business reasons, and I
really like both DB2 and Informix. Both products have their pros and
cons. (Again, *not* looking for a flame war!) IDS is doing more than expoiting multi threading. IDS implements it's
own threading routines to begin with because at the time threading was
not available or stable in some OS.
However, I used IDS for a long time (10 years) on both HP-UX and Linux.
Once the engine was "settled in" and configured nicely, it was my
experience that stability was just rock solid.

Would IBM ever consider taking DB2 LUW multithreaded?

Why not? All a question of cost vs benefits.
Performance is not everything btw. since multi threading simplifies
(shared) memory management.

Cheers
Serge
--
Serge Rielau
DB2 Solutions Development
DB2 UDB for Linux, Unix, Windows
IBM Toronto Lab
Jan 24 '06 #7
Serge,

Almost nothing to do with this thread, but I can't resist because the
topic is very current.

"CPUs" can now be mulit-cored -- ie, one physical CPU unit can have
several CPUs in it. Each one of those will ultimately have what Intel
calls "hyperthreading ." Then there are "virtual CPUs."

IBM has committed to charging licensing fees "by the physical CPU."
Will that still mean that, even if I have the processing power of 16
CPUs in one physical unit, I'll still pay for one "physical unit?"

Jan 24 '06 #8
On Tue, 24 Jan 2006 15:13:02 UTC Serge Rielau <sr*****@ca.ibm .com>
wrote:
dotyet wrote:
Hi Everyone,

It would be a real big help if anyone can shed light on whether DB2 UDB
8.2 on Solaris will make optimum use of a Sun T2000 server. The server
has 1 CPU with 8 cores and each core has 4 threads (32 virtual CPUs).
We are exploring this option againts an equivalent performance pSeries
box. But before we delve deeper, we want some basic info on that.

I think youneed to differentiate between threading on the OS and virtual
CPU's. I know for fact that DB2 exploits virtual CPU's on pSeries and
I'd be surprised if it couldn't exploit it on Sun.
But DB2 on Unix uses processes and is not using multithreading on the OS
level. IDS by contrast is a multithreaded engine.
Again... this has nothing to do with exploitation of virtual CPU's.


We used DB2 for several years running OS/2 on 4 and 8-way servers.
Since 7.2 was the end of the line for OS/2, I don't know what V8 might
do but we found that the scaling in performance tracked the number of
CPUs pretty close as we would enable CPUs one at a time, especially if
we re-tuned the installation as the number of available CPUs changed.
On the same hardware, we did not see the same scaling with NT4 or W2K
(although W2K was a little better than NT4). What we found was that
it was a matter of how the 2 OSs handled threading. The native
process allocation model for OS/2 was to allocated processor resources
on a per-thread basis while Windows allocated them on a per process
basis. OS/2 could basically evenly employee all the available
processors for a single instance on a single query while the Win model
tended to max out each processor before moving on to the next by
trying to keep each process isolated on a single processor. In short,
how effective multi-threading is depends very heavily on the threading
model used by the underlying OS as well as on the application mix
being run. I have no clue as to how Linux would have worked - these
were production servers so corp. was a tad touchy about playing
benchmark gmaes on them <g>. Our AIX servers showed a similar scaling
response, so I suspect that DB2 for AIX was similarly tuned for that
model.

--
Will Honea
Jan 25 '06 #9

IBM has committed to charging licensing fees "by the physical CPU."
Will that still mean that, even if I have the processing power of 16
CPUs in one physical unit, I'll still pay for one "physical unit?"


Especially relevant question with the new Niagra cores from Sun, which
BTW, rock.
Jan 25 '06 #10

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

37
4911
by: ajikoe | last post by:
Hello, Is anyone has experiance in running python code to run multi thread parallel in multi processor. Is it possible ? Can python manage which cpu shoud do every thread? Sincerely Yours, Pujo
4
4683
by: Frank Jona | last post by:
Intellisense with C# and a multi-file assembly is not working. With VB.NET it is working. Is there a fix availible? We're using VisualStudio 2003 Regards Frank
12
3892
by: * ProteanThread * | last post by:
but depends upon the clique: http://groups.google.com/groups?hl=en&lr=&ie=UTF-8&oe=UTF-8&threadm=954drf%24oca%241%40agate.berkeley.edu&rnum=2&prev=/groups%3Fq%3D%2522cross%2Bposting%2Bversus%2Bmulti%2Bposting%2522%26ie%3DUTF-8%26oe%3DUTF-8%26hl%3Den ...
0
3796
by: frankenberry | last post by:
I have multi-page tiff files. I need to extract individual frames from the multi-page tiffs and save them as single-page tiffs. 95% of the time I receive multi-page tiffs containing 1 or more black and white CCITT4 compressed files (frames) inside the tiff. Every now and then I receive a mixture of black and white CCITT4 and JPEG compressed files, and sometimes just multi-page tiffs with JPEG only. The code runs great when dealing with the...
6
8192
by: cody | last post by:
What are multi file assemblies good for? What are the advantages of using multiple assemblies (A.DLL+B.DLL) vs. a single multi file assembly (A.DLL+A.NETMODULE)?
4
17889
by: mimmo | last post by:
Hi! I should convert the accented letters of a string in the correspondent letters not accented. But when I compile with -Wall it give me: warning: multi-character character constant Do the problem is the charset? How I can avoid this warning? But the worst thing isn't the warning, but that the program doesn't work! The program execute all other operations well, but it don't print the converted letters: for example, in the string...
5
6004
by: Shane Story | last post by:
I can seem to get the dimensions of a frame in a multiframe tiff. After selecting activeframe, the Width/Height is still really much larger than the page's actual dimensions. When I split a TIFF to several PNG files this causes a problem, becuase the resulting image is (the page to the far left and a lot of black space surrounding it and a filesize that is larger than needed. Any ideas?
5
5778
by: bobwansink | last post by:
Hi, I'm relatively new to programming and I would like to create a C++ multi user program. It's for a project for school. This means I will have to write a paper about the theory too. Does anyone know a good place to start looking for some theory on the subject of multi user applications? I know only bits and pieces, like about transactions, but a compendium of possible approches to multi user programming would be very appreciated!
0
2334
by: Sabri.Pllana | last post by:
We apologize if you receive multiple copies of this call for papers. *********************************************************************** 2008 International Workshop on Multi-Core Computing Systems (MuCoCoS'08) Barcelona, Spain, March 4 - 7, 2008; in conjunction with CISIS'08. <http://www.par.univie.ac.at/~pllana/mucocos08> *********************************************************************** Context
1
9328
by: mknoll217 | last post by:
I am recieving this error from my code: The multi-part identifier "PAR.UniqueID" could not be bound. The multi-part identifier "Salary.UniqueID" could not be bound. The multi-part identifier "PAR.UniqueID" could not be bound. The multi-part identifier "PAR.PAR_Status" could not be bound. The multi-part identifier "Salary.New_Salary" could not be bound. The multi-part identifier "Salary.UniqueID" could not be bound. The multi-part...
0
10924
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. Here is my compilation command: g++-12 -std=c++20 -Wnarrowing bit_field.cpp Here is the code in...
0
10605
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that captivates audiences and drives business growth. The Art of Business Website Design Your website is...
1
10665
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For most users, this new feature is actually very convenient. If you want to control the update process,...
0
10301
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the choice of these technologies. I'm particularly interested in Zigbee because I've heard it does some...
0
7023
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert into image. Globals.ThisAddIn.Application.ActiveDocument.Select();...
0
5685
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols. I succeeded, with both firewalls in the same network. But I'm wondering if it's possible to do the same thing, with 2 Pfsense firewalls...
0
5874
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
1
4498
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
3
3139
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.