23.07.2014 Views

Lustre 1.6 Operations Manual

Lustre 1.6 Operations Manual

Lustre 1.6 Operations Manual

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

21.1.0.1 OSS Service Thread Count<br />

The oss_num_threads parameter allows the number of OST service threads to be<br />

specified at module load time on the OSS nodes:<br />

options ost oss_num_threads={N}<br />

An OSS can have a maximum of 512 service threads and a minimum of 2 service<br />

threads. The number of service threads is a function of how much RAM and how<br />

many CPUs are on each OSS node (1 thread / 128MB * num_cpus). If the load on the<br />

OSS node is high, new service threads will be started in order to process more<br />

requests concurrently, up to 4x the initial number of threads (subject to the<br />

maximum of 512). For a 2GB 2-CPU system the default thread count is 32 and the<br />

maximum thread count is 128.<br />

Increasing the size of the thread pool may help when:<br />

■ Several OSTs are exported from a single OSS<br />

■ Back-end storage is running synchronously<br />

■<br />

I/O completions take excessive time<br />

In such cases, a larger number of I/O threads allows the kernel and storage to<br />

aggregate many writes together for more efficient disk I/O. The OSS thread pool is<br />

shared—each thread allocates approximately 1.5 MB (maximum RPC size + 0.5 MB)<br />

for internal I/O buffers.<br />

Note – Consider memory consumption when increasing the thread pool size.<br />

21.1.1 MDS Threads<br />

There is a similar parameter for the number of MDS service threads:<br />

options mds mds_num_threads={N}<br />

At this time, we have not tested to determine the optimal number of MDS threads.<br />

The default value varies, based on server size, up to a maximum of 32. The<br />

maximum number of threads (MDS_MAX_THREADS) is 512.<br />

Note – The OSS and MDS automatically start new service threads dynamically in<br />

response to server loading within a factor of 4. The default is calculated the same<br />

way as before (as explained in OSS Service Thread Count).<br />

Setting the *_num_threads module parameter disables the automatic thread<br />

creation behavior.<br />

21-2 <strong>Lustre</strong> <strong>1.6</strong> <strong>Operations</strong> <strong>Manual</strong> • September 2008

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!