Unix Technical Forum

SEO

vBulletin Search Engine Optimization


Go Back   Unix Technical Forum > Database Server Software > PostgreSQL > Pgsql Performance

Register FAQ Members List Calendar Search Today's Posts Mark Forums Read
  #1 (permalink)  
Old 04-19-2008, 06:49 AM
Juan Casero
 
Posts: n/a
Default PostgreSQL and Ultrasparc T1

Hi -


Can anyone tell me how well PostgreSQL 8.x performs on the new Sun Ultrasparc
T1 processor and architecture on Solaris 10? I have a custom built retail
sales reporting that I developed using PostgreSQL 7.48 and PHP on a Fedora
Core 3 intel box. I want to scale this application upwards to handle a
database that might grow to a 100 GB. Our company is green mission conscious
now so I was hoping I could use that to convince management to consider a Sun
Ultrasparc T1 or T2 system provided that if I can get the best performance
out of it on PostgreSQL. So will newer versions of PostgreSQL (8.1.x) be
able to take of advantage of the multiple cores on a T1 or T2? I cannot
change the database and this will be a hard sell unless I can convince them
that the performance advantages are too good to pass up. The company is
moving in the Win32 direction and so I have to provide rock solid reasons for
why I want to use Solaris Sparc on a T1 or T2 server for this database
application instead of Windows on SQL Server.


Thanks,
Juan

-------------------------------------------------------

---------------------------(end of broadcast)---------------------------
TIP 9: In versions below 8.0, the planner will ignore your desire to
choose an index scan if your joining column's datatypes do not
match

Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #2 (permalink)  
Old 04-19-2008, 06:49 AM
Christopher Petrilli
 
Posts: n/a
Default Re: PostgreSQL and Ultrasparc T1

On 12/18/05, Juan Casero <caseroj@comcast.net> wrote:
> Can anyone tell me how well PostgreSQL 8.x performs on the new Sun Ultrasparc
> T1 processor and architecture on Solaris 10? I have a custom built retail
> sales reporting that I developed using PostgreSQL 7.48 and PHP on a Fedora
> Core 3 intel box. I want to scale this application upwards to handle a
> database that might grow to a 100 GB. Our company is green mission conscious
> now so I was hoping I could use that to convince management to consider a Sun
> Ultrasparc T1 or T2 system provided that if I can get the best performance
> out of it on PostgreSQL. So will newer versions of PostgreSQL (8.1.x) be
> able to take of advantage of the multiple cores on a T1 or T2? I cannot
> change the database and this will be a hard sell unless I can convince them
> that the performance advantages are too good to pass up. The company is
> moving in the Win32 direction and so I have to provide rock solid reasons for
> why I want to use Solaris Sparc on a T1 or T2 server for this database
> application instead of Windows on SQL Server.


I do not know that anyone outside pilot orgs have received their
orders for the new T1 machines, so real world experience will not be
available yet. The big question is whether or not it manages the
processors only for threads (in which case Postgresql won't benefit
much) or for processes as well.

PostgreSQL takes a "process-parallel" approach to parallelism, not
thread-level. There are lost of historical reasons, but, that's just
hte way it is for now.

Chris
--
| Christopher Petrilli
| petrilli@gmail.com

---------------------------(end of broadcast)---------------------------
TIP 2: Don't 'kill -9' the postmaster

Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #3 (permalink)  
Old 04-19-2008, 06:49 AM
Luke Lonergan
 
Posts: n/a
Default Re: PostgreSQL and Ultrasparc T1

Juan,

On 12/18/05 8:35 AM, "Juan Casero" <caseroj@comcast.net> wrote:

> Can anyone tell me how well PostgreSQL 8.x performs on the new Sun Ultrasparc
> T1 processor and architecture on Solaris 10? I have a custom built retail
> sales reporting that I developed using PostgreSQL 7.48 and PHP on a Fedora
> Core 3 intel box. I want to scale this application upwards to handle a
> database that might grow to a 100 GB. Our company is green mission conscious
> now so I was hoping I could use that to convince management to consider a Sun
> Ultrasparc T1 or T2 system provided that if I can get the best performance
> out of it on PostgreSQL. So will newer versions of PostgreSQL (8.1.x) be
> able to take of advantage of the multiple cores on a T1 or T2? I cannot
> change the database and this will be a hard sell unless I can convince them
> that the performance advantages are too good to pass up. The company is
> moving in the Win32 direction and so I have to provide rock solid reasons for
> why I want to use Solaris Sparc on a T1 or T2 server for this database
> application instead of Windows on SQL Server.


The Niagara CPUs are heavily multi-threaded and will require a lot of
parallelism to be exposed to them in order to be effective.

Until Sun makes niagara-based machines with lots of I/O channels, there
won't be much I/O parallelism available to match the CPU parallelism.

Bizgres MPP will use the process and I/O parallelism of these big SMP
machines and the version based on Postgres 8.1 will be out in February.

- Luke



---------------------------(end of broadcast)---------------------------
TIP 5: don't forget to increase your free space map settings

Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #4 (permalink)  
Old 04-19-2008, 06:49 AM
Jignesh K. Shah
 
Posts: n/a
Default Re: PostgreSQL and Ultrasparc T1

Sun Fire T2000 has 3 PCI-E and 1PCI-X slot free when shipped. Using
dual fiber channel 2G adapters you can get about 200MB x 8 = 1600MB/sec
IO bandwidth. Plus when 4G HBAs are supported that will double up. Now I
think generally that's good enough for 1TB raw data or 2-3 TB Database
size. Of course typically the database size in PostgreSQL space will be
in the 100-500GB range so a Sun Fire T2000 can be a good fit with enough
area to grow at a very reasonable price.

Of course like someone mentioned if all you have is 1 connection using
postgresql which cannot spawn helper processes/threads, this will be
limited by the single thread performance which is about 1.2Ghz compared
on Sun Fire T2000 to AMD64 (Sun Fire X4200) which pretty much has
similar IO Bandwidth, same size chassis, but the individual AMD64 cores
runs at about 2.4Ghz (I believe) and max you can get is 4 cores but you
also have to do a little trade off in terms of power consumption in lei
of faster single thread performance. So Choices are available with both
architecture. .However if you have a webserver driving a postgreSQL
backend, then UltraSPARC T1 might be a better option if you suddenly
wants to do 100s of db connections. The SunFire T2000 gives you 8 cores
with 32 threads in all running on the system.

With PostgreSQL 8.1 fix for SMP Bufferpool performance and with ZFS now
available in Solaris Express release, it would be interesting to see how
the combination of PostgreSQL 8.1 and ZFS works on Solaris since ZFS is
one of the perfect file systems for PostgreSQL where it wants all
complexities (like block allocation, fragmentation, etc) to the
underlying file systems and not re-implement its own infrastructure.

If somebody is already conducting their own tests, do let me know. As
soon as I get some free cycles, I want to run ZFS with PostgreSQL using
Solaris Express. If you have some preferred workloads do let me know.

Regards,
Jignesh


Luke Lonergan wrote:

>Juan,
>
>On 12/18/05 8:35 AM, "Juan Casero" <caseroj@comcast.net> wrote:
>
>
>
>>Can anyone tell me how well PostgreSQL 8.x performs on the new Sun Ultrasparc
>>T1 processor and architecture on Solaris 10? I have a custom built retail
>>sales reporting that I developed using PostgreSQL 7.48 and PHP on a Fedora
>>Core 3 intel box. I want to scale this application upwards to handle a
>>database that might grow to a 100 GB. Our company is green mission conscious
>>now so I was hoping I could use that to convince management to consider a Sun
>>Ultrasparc T1 or T2 system provided that if I can get the best performance
>>out of it on PostgreSQL. So will newer versions of PostgreSQL (8.1.x) be
>>able to take of advantage of the multiple cores on a T1 or T2? I cannot
>>change the database and this will be a hard sell unless I can convince them
>>that the performance advantages are too good to pass up. The company is
>>moving in the Win32 direction and so I have to provide rock solid reasons for
>>why I want to use Solaris Sparc on a T1 or T2 server for this database
>>application instead of Windows on SQL Server.
>>
>>

>
>The Niagara CPUs are heavily multi-threaded and will require a lot of
>parallelism to be exposed to them in order to be effective.
>
>Until Sun makes niagara-based machines with lots of I/O channels, there
>won't be much I/O parallelism available to match the CPU parallelism.
>
>Bizgres MPP will use the process and I/O parallelism of these big SMP
>machines and the version based on Postgres 8.1 will be out in February.
>
>- Luke
>
>
>
>---------------------------(end of broadcast)---------------------------
>TIP 5: don't forget to increase your free space map settings
>
>


---------------------------(end of broadcast)---------------------------
TIP 4: Have you searched our list archives?

http://archives.postgresql.org

Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #5 (permalink)  
Old 04-19-2008, 06:49 AM
Luke Lonergan
 
Posts: n/a
Default Re: PostgreSQL and Ultrasparc T1

Jignesh,


On 12/19/05 6:27 AM, "Jignesh K. Shah" <J.K.Shah@Sun.COM> wrote:

> Sun Fire T2000 has 3 PCI-E and 1PCI-X slot free when shipped. Using
> dual fiber channel 2G adapters you can get about 200MB x 8 = 1600MB/sec
> IO bandwidth. Plus when 4G HBAs are supported that will double up. Now I
> think generally that's good enough for 1TB raw data or 2-3 TB Database
> size. Of course typically the database size in PostgreSQL space will be
> in the 100-500GB range so a Sun Fire T2000 can be a good fit with enough
> area to grow at a very reasonable price.


The free PCI slots don't indicate the I/O speed of the machine, otherwise
I'll just go back 4 years and use a Xeon machine.

Can you educate us a bit on the T-2000, like where can we find a technical
publication that can answer the following:

Are all of the PCI-E and PCI-X independent, mastering channels? Are they
connected via a crossbar or is it using the JBus? Is the usable memory
bandwidth available to the HBAs and CPU double the 1,600MB/s, or 3,200MB/s?

> Of course like someone mentioned if all you have is 1 connection using
> postgresql which cannot spawn helper processes/threads, this will be
> limited by the single thread performance which is about 1.2Ghz compared
> on Sun Fire T2000 to AMD64 (Sun Fire X4200) which pretty much has
> similar IO Bandwidth, same size chassis, but the individual AMD64 cores
> runs at about 2.4Ghz (I believe) and max you can get is 4 cores but you
> also have to do a little trade off in terms of power consumption in lei
> of faster single thread performance. So Choices are available with both
> architecture. .However if you have a webserver driving a postgreSQL
> backend, then UltraSPARC T1 might be a better option if you suddenly
> wants to do 100s of db connections. The SunFire T2000 gives you 8 cores
> with 32 threads in all running on the system.


So - OLTP / webserver, that makes sense.

- Luke



---------------------------(end of broadcast)---------------------------
TIP 4: Have you searched our list archives?

http://archives.postgresql.org

Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #6 (permalink)  
Old 04-19-2008, 06:49 AM
Jignesh Shah
 
Posts: n/a
Default Re: PostgreSQL and Ultrasparc T1


Hi Luke,

I have gone to the max with 4 fibers on Sun Fire T2000. But I am not sure about the answers that you asked. Let me see if I can get answers for them. I am going to try to max out the IO on these systems with 8 fibers as soon as I get additional storage so stay tuned for that.

By the way you don't have to wait for my tests. Just get a trial server and try it on your own. If you don't like it return it.

https://www.sun.com/emrkt/trycoolthreads/contactme.html

Check out Jonathan's blog for more details http://blogs.sun.com/jonathan

However if you do try it with PostgreSQL, do let me know also with your experience.

Regards,
Jignesh



----- Original Message -----
From: Luke Lonergan <llonergan@greenplum.com>
Date: Monday, December 19, 2005 12:31 pm
Subject: Re: [PERFORM] PostgreSQL and Ultrasparc T1
To: Jignesh Shah <J.K.Shah@Sun.COM>
Cc: Juan Casero <caseroj@comcast.net>, pgsql-performance@postgresql.org

> Jignesh,
>
>
> On 12/19/05 6:27 AM, "Jignesh K. Shah" <J.K.Shah@Sun.COM> wrote:
>
> > Sun Fire T2000 has 3 PCI-E and 1PCI-X slot free when shipped. Using
> > dual fiber channel 2G adapters you can get about 200MB x 8 =

> 1600MB/sec> IO bandwidth. Plus when 4G HBAs are supported that will
> double up. Now I
> > think generally that's good enough for 1TB raw data or 2-3 TB

> Database> size. Of course typically the database size in PostgreSQL
> space will be
> > in the 100-500GB range so a Sun Fire T2000 can be a good fit with

> enough> area to grow at a very reasonable price.
>
> The free PCI slots don't indicate the I/O speed of the machine,
> otherwiseI'll just go back 4 years and use a Xeon machine.
>
> Can you educate us a bit on the T-2000, like where can we find a
> technicalpublication that can answer the following:
>
> Are all of the PCI-E and PCI-X independent, mastering channels?
> Are they
> connected via a crossbar or is it using the JBus? Is the usable
> memorybandwidth available to the HBAs and CPU double the 1,600MB/s,
> or 3,200MB/s?
>
> > Of course like someone mentioned if all you have is 1 connection

> using> postgresql which cannot spawn helper processes/threads, this
> will be
> > limited by the single thread performance which is about 1.2Ghz

> compared> on Sun Fire T2000 to AMD64 (Sun Fire X4200) which pretty
> much has
> > similar IO Bandwidth, same size chassis, but the individual

> AMD64 cores
> > runs at about 2.4Ghz (I believe) and max you can get is 4 cores

> but you
> > also have to do a little trade off in terms of power consumption

> in lei
> > of faster single thread performance. So Choices are available

> with both
> > architecture. .However if you have a webserver driving a postgreSQL
> > backend, then UltraSPARC T1 might be a better option if you suddenly
> > wants to do 100s of db connections. The SunFire T2000 gives you 8

> cores> with 32 threads in all running on the system.
>
> So - OLTP / webserver, that makes sense.
>
> - Luke
>
>
>


---------------------------(end of broadcast)---------------------------
TIP 5: don't forget to increase your free space map settings

Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #7 (permalink)  
Old 04-19-2008, 06:49 AM
Luke Lonergan
 
Posts: n/a
Default Re: PostgreSQL and Ultrasparc T1

Jignesh,

On 12/19/05 11:29 AM, "Jignesh Shah" <J.K.Shah@Sun.COM> wrote:

> I have gone to the max with 4 fibers on Sun Fire T2000. But I am not sure
> about the answers that you asked. Let me see if I can get answers for them. I
> am going to try to max out the IO on these systems with 8 fibers as soon as I
> get additional storage so stay tuned for that.


Cool - how close did you get to 800MB/s?

> By the way you don't have to wait for my tests. Just get a trial server and
> try it on your own. If you don't like it return it.
>
> https://www.sun.com/emrkt/trycoolthreads/contactme.html


Done - I'll certainly test Postgres / Bizgres on it - you know me ;-)

> However if you do try it with PostgreSQL, do let me know also with your
> experience.


See above.

The Niagara is UltraSparc III compatible - so the GCC compiler should emit
good code for it, right?

- Luke



---------------------------(end of broadcast)---------------------------
TIP 2: Don't 'kill -9' the postmaster

Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #8 (permalink)  
Old 04-19-2008, 06:49 AM
Jignesh Shah
 
Posts: n/a
Default Re: PostgreSQL and Ultrasparc T1

Hi Luke,

I got about 720 MB/sec to 730 MB/sec with plain dd tests on my current storage configuration (8 LUNS on 4 fibers) which slowed me down (10K rpm 146 GB disks FC) with 4 LUNS going through a longer pass to the disks (via a controller master array to slave JBODs to provide ) .

extended device statistics
r/s w/s Mr/s Mw/s wait actv wsvc_t asvc_t %w %b device
0.8 14.0 0.0 0.0 0.0 0.3 0.0 17.8 0 4 c3t0d0
91.4 0.0 91.4 0.0 0.0 1.0 0.0 10.5 0 96 c0t40d0
96.0 0.0 96.0 0.0 0.0 1.0 0.0 10.0 0 96 c5t40d1
95.8 0.0 95.8 0.0 0.0 1.0 0.0 10.0 0 96 c0t40d1
96.8 0.0 96.8 0.0 0.0 1.0 0.0 9.9 0 96 c5t40d0
84.6 0.0 84.6 0.0 0.0 1.0 0.0 11.4 0 96 c4t46d1
85.6 0.0 85.6 0.0 0.0 1.0 0.0 11.2 0 96 c4t46d0
85.2 0.0 85.2 0.0 0.0 1.0 0.0 11.3 0 96 c2t46d1
85.4 0.0 85.4 0.0 0.0 1.0 0.0 11.3 0 96 c2t46d0

I can probably bump it up a bit with fine storage tuning (LUN) but there is no limitation on the Sun Fire T2000 to bottleneck on anything plus dd tests are not the best throughput measurement tool.

Yes UltraSPARC T1 supports the SPARC V9 architecture and can support all the SPARC binaries already generated or newly generated using gcc or Sun Studio 11 which is also free.
http://developers.sun.com/prodtech/c...ds/sun_studio/



Regards,
Jignesh


----- Original Message -----
From: Luke Lonergan <llonergan@greenplum.com>
Date: Monday, December 19, 2005 2:38 pm
Subject: Re: [PERFORM] PostgreSQL and Ultrasparc T1
To: Jignesh Shah <J.K.Shah@Sun.COM>
Cc: Juan Casero <caseroj@comcast.net>, pgsql-performance@postgresql.org

> Jignesh,
>
> On 12/19/05 11:29 AM, "Jignesh Shah" <J.K.Shah@Sun.COM> wrote:
>
> > I have gone to the max with 4 fibers on Sun Fire T2000. But I am

> not sure
> > about the answers that you asked. Let me see if I can get answers

> for them. I
> > am going to try to max out the IO on these systems with 8 fibers

> as soon as I
> > get additional storage so stay tuned for that.

>
> Cool - how close did you get to 800MB/s?
>
> > By the way you don't have to wait for my tests. Just get a trial

> server and
> > try it on your own. If you don't like it return it.
> >
> > https://www.sun.com/emrkt/trycoolthreads/contactme.html

>
> Done - I'll certainly test Postgres / Bizgres on it - you know me ;-)
>
> > However if you do try it with PostgreSQL, do let me know also

> with your
> > experience.

>
> See above.
>
> The Niagara is UltraSparc III compatible - so the GCC compiler
> should emit
> good code for it, right?
>
> - Luke
>
>
>
> ---------------------------(end of broadcast)-----------------------
> ----
> TIP 2: Don't 'kill -9' the postmaster
>


---------------------------(end of broadcast)---------------------------
TIP 2: Don't 'kill -9' the postmaster

Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #9 (permalink)  
Old 04-19-2008, 06:50 AM
Luke Lonergan
 
Posts: n/a
Default Re: PostgreSQL and Ultrasparc T1

Jignesh,

On 12/19/05 12:21 PM, "Jignesh Shah" <J.K.Shah@Sun.COM> wrote:

> I got about 720 MB/sec to 730 MB/sec with plain dd tests on my current
> storage configuration (8 LUNS on 4 fibers) which slowed me down (10K rpm 146
> GB disks FC) with 4 LUNS going through a longer pass to the disks (via a
> controller master array to slave JBODs to provide ) .
>
> extended device statistics
> r/s w/s Mr/s Mw/s wait actv wsvc_t asvc_t %w %b device
> 0.8 14.0 0.0 0.0 0.0 0.3 0.0 17.8 0 4 c3t0d0
> 91.4 0.0 91.4 0.0 0.0 1.0 0.0 10.5 0 96 c0t40d0
> 96.0 0.0 96.0 0.0 0.0 1.0 0.0 10.0 0 96 c5t40d1
> 95.8 0.0 95.8 0.0 0.0 1.0 0.0 10.0 0 96 c0t40d1


Can you please explain these columns? R/s, is that millions of pages or
extents or something? How do I translate this to 730 million bytes per
second?

- Luke



---------------------------(end of broadcast)---------------------------
TIP 9: In versions below 8.0, the planner will ignore your desire to
choose an index scan if your joining column's datatypes do not
match

Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #10 (permalink)  
Old 04-19-2008, 06:50 AM
Luke Lonergan
 
Posts: n/a
Default Re: PostgreSQL and Ultrasparc T1

Jignesh,

On 12/19/05 12:21 PM, "Jignesh Shah" <J.K.Shah@Sun.COM> wrote:

> extended device statistics
> r/s w/s Mr/s Mw/s wait actv wsvc_t asvc_t %w %b device
> 0.8 14.0 0.0 0.0 0.0 0.3 0.0 17.8 0 4 c3t0d0
> 91.4 0.0 91.4 0.0 0.0 1.0 0.0 10.5 0 96 c0t40d0
> 96.0 0.0 96.0 0.0 0.0 1.0 0.0 10.0 0 96 c5t40d1
> 95.8 0.0 95.8 0.0 0.0 1.0 0.0 10.0 0 96 c0t40d1
> 96.8 0.0 96.8 0.0 0.0 1.0 0.0 9.9 0 96 c5t40d0
> 84.6 0.0 84.6 0.0 0.0 1.0 0.0 11.4 0 96 c4t46d1
> 85.6 0.0 85.6 0.0 0.0 1.0 0.0 11.2 0 96 c4t46d0
> 85.2 0.0 85.2 0.0 0.0 1.0 0.0 11.3 0 96 c2t46d1
> 85.4 0.0 85.4 0.0 0.0 1.0 0.0 11.3 0 96 c2t46d0


Doh! Forget my last message, each of these is a single drive.

Wacky layout though - it looks like c0,c2,c3,c4,c5 - is that 5 controllers
there?

Also - what are the RAID options on this unit?

To get optimal performance on an 8 core unit, would we want to map 1 active
process to each of these drives? Can the CPU run all 8 threads
simultaneously?

- Luke



---------------------------(end of broadcast)---------------------------
TIP 4: Have you searched our list archives?

http://archives.postgresql.org

Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Reply


Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On
Forum Jump


All times are GMT. The time now is 10:50 PM.


Powered by vBulletin® Version 3.6.5
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
SEO by vBSEO 3.2.0
UnixAdminTalk.com

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461