Solved

NT responce is freezing  when disk access (writing)

Posted on 1997-12-08
3
174 Views
Last Modified: 2013-12-23
Hello,

Have you research such a problem?..
When NT performs intensive write operations, it's console becomes very slow. It is not possible to connect to any running application. We have written simple program that writes several thousand blocks of 30 - 60Kb on disk. When it executes, NT console stops responding. Microsoft sais that if we see 100% disk utilization, it tells aboult disk bottleneck. We have seen this issue on various hardware platforms: desktop PC with EIDE controller, Compaq Proliant server with Smart-2/P Array an others. When similar program runs in OS/2, this OS behaves better: OS/2 itself and its tasks responce more quickly.
Could you give me a hint, what is the main cause of such NT behavior and are there any settings improving that NT responce?

      Regards,
            Dmitri Menschikov
      dim@qnet.e-burg.su
0
Comment
Question by:dim120897
  • 2
3 Comments
 
LVL 5

Accepted Solution

by:
cer earned 100 total points
Comment Utility
I see this on our server, but there is no one working at the console. Maybe the behaviour is normal. You can decrease the priority of the task which writes to the disk. You must somehow slow down the diskactivity in order to give more time to the other applications. If your programm writes blocks to the disk as fast as possible you will always run into a bottleneck.

You can try to speed up file system activity:

If you have some extra RAM and an active file system, you can speed up file system activity by increasing the
IoPageLockLimit from the default 512K bytes to 4096K bytes or more. Edit:

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\Memory Management

IoPageLockLimit type REG_DWORD Default: 512K

This entry is the maximum number of bytes that can be locked for I/O operations. When the value is 0, the system
defaults to 512K. The largest value is based on the amount of memory in your system. I would limit this entry to:

 RAM (MB)                    IoPageLockLimit
 32                          4096000
 64                          8192000
 128                         16384000
 256+                        65536000


Before making changes, get a baseline by using performance monitor for a representative period of time. Make your
changes in small increments and measure performance after each change.


0
 

Author Comment

by:dim120897
Comment Utility
Thank you very much.

I realize, that if my program performs writes as fast as possible (it really does!), there is a bottleneck. Could you explain me, where is the bottleneck? I see that processor is loaded below 50%. I think, the bus also is not fully loaded. When I ran my program in OS/2, it responces very fast. I increased IOPageLockLimit as you had advised, and it seems NT responce improved, but not in the same matter as in OS/2.
Also, decreasing of task priority is not useful, because in performance monitor I see that the user time is small and the privileged time is almost the same as the total processor time. So the system process executes most time during experiment.
    I think, this question is important in multitasking NT environment (for example, Winframe): when one task is performing writing, others are stopping.
    Thank you.

0
 
LVL 5

Expert Comment

by:cer
Comment Utility
The problem with NT is that it is NOT real multitasking as it is for OS/2. Therefore it can't really be done, you must try to make a workarround special for your case.
I remember there a 3rd party products which turns NT into a real multitasking programm.
If you improve your diskperformence your programm will writes even faster, until processor time is 100% for this task. If the programm is designed for just fast writing, I guess there is no disk system which can cope with this.
If you give less time to your writing process, it can't issue so much disk activity, but you must slow it down very much. If then does not write write anymore it will behave very slowly.
So the only chance would be to limit the disk access. If you for example write to a network volume the NIC is the bottleneck leaving enough resources for other tasks.
While your programm is running: open the taskmanager, switch to processes and have a look which task takes up all the CPU time. Try to decrease the priority of this task.

0

Featured Post

How to improve team productivity

Quip adds documents, spreadsheets, and tasklists to your Slack experience
- Elevate ideas to Quip docs
- Share Quip docs in Slack
- Get notified of changes to your docs
- Available on iOS/Android/Desktop/Web
- Online/Offline

Join & Write a Comment

Greetings, Experts! First let me state that this website is top notch. I thoroughly enjoy the community that is shared here; those seeking help and those willing to sacrifice their time to help. It is fantastic. I am writing this article at th…
This article is in response to a question (http://www.experts-exchange.com/Networking/Network_Management/Network_Analysis/Q_28230497.html) here at Experts Exchange. The Original Poster (OP) requires a utility that will accept a list of IP addresses …
Get a first impression of how PRTG looks and learn how it works.   This video is a short introduction to PRTG, as an initial overview or as a quick start for new PRTG users.
This video demonstrates how to create an example email signature rule for a department in a company using CodeTwo Exchange Rules. The signature will be inserted beneath users' latest emails in conversations and will be displayed in users' Sent Items…

771 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

11 Experts available now in Live!

Get 1:1 Help Now