Cache Size

Hi all, is there any suggestion from Navision about the cache (commitcache) size ? My task is to store a 8 GB database for 45 users on 3 logical disks. Operating System NT 4.0; NF 2.01A Thanks in advance Volker VL

Hi, We have a configuration near yours. NF 2.01, NTSERVER 4.0, 512 MO RAM. Database size is 10 Gb on 3 disks and 40 Users conections at the same time. The commitcache size on the server is 326 Mb. i hope it helps you. Edited by - lessi on 2001 May 16 10:53:58

Hi There is formula from Navision to find out the size of DBMS cache. DBMS Cache = Physical memory - Memory required by OS - 50Kb * No.workstations - 1 MB (For NF server) - Memory required by other Programs And It should be at least 10% of Active data size of the database. Maximum size of the Database cache is 1 GB If the Database cache is greater than the available memory, system will create swap files and it may slowdown the system. Commit cache takes up space in the DBMS cache. So it can be up to 2/3 of the allocated DBMS cache. Commit cache optimize the activities of database. It gives good performance. But please remember,use commit cache only if you think your system is fully consistent. Refer Navision installation manual for more about commit cache. Regards Joseph Mathew Edited by - joseph_mathew on 2001 May 16 12:45:22

Joseph Mathew said “If the Database cache is greater than the available memory, system will create swap files and it may slowdown the system.” The reason for having a cache if that reading and writing from/to disk is verrrrry slow. Well compared to holding it in memory, but there is only a limited amount of memory. The memory is also required for other programs to run and is zapped if the computer is turned off. When you access the data from a database there is a very good chance you are going to access the same bit of data again so the computer stores this in memory. When you write to the database as well as writing it to the disk it holds it in memory. The computer only has a limited space in memory to hold this data (the memory is called cache). So when all the space is used up it writes over the data that has not been accessed in the longest time. So anything that is required often is kept in memory. When windows runs out of memory for running programs and storing data it uses a swap file. Windows thinks of memory as pages and allocates pages of memory to programs. When all the memory is used up it writes the least accessed page to the swap file (ie swaps the memory out). If that memory is then required it is swapped back in and another page swapped out. If you crate a too big a cache for Navision you may find windows constantly swapping your cache out of memory and storing it in the swap file on disk. This all takes time for windows to do, time that windows could be running Navision. Also this is completely pointless as the cache is so Navision does not have to get data off the disk but if the cache is swapped out then it is stored on disk. The system is reduced to a crawl and can become unusable. If you find this happening (you can tell by watching the page faults on the task manager) you should do three things. i) Reduce the cache size until it does not swap out ii) Remove unused processes (web servers, SQL server, that you installed just to try out) iii) Buy more memory This happens very often if you put Navision on an old server with only 64 or 128MB or on a server with a lot of other processes running. Paul Baxter

In my experience normally 1.5 to 2 MB per possible active session is a good estimate to set up your cache. If you use commitcache make sure you are using a UPS! Joerg R Feldhofen KUMATRONIK Business Solutions, Inc. Houston, TX

You can’t really predict in general how much cache will benefit an installation. The answer is that “it depends on how you use Navision.” Of course if you make the cache so big that you the cache gets swapped to disk, you defeat the entire purpose of the cache. Memory if fairly inexpensive today. I think a 512MB cache is a good start which would require at least 128MB of additional memory in the server. If you have performance issues, you can analyze the server with Microsoft tools. Adding additional memory and cache might help. Jim Hollcraft NCSD, NCSP, MCSE, CNE, MCP, MST aka Skater http://drilldot.com Unauthorized Navision News