Microsoft KB Archive/830722

= FIX: Cube Processing Performance Is Slower on the 64-Bit Version of Analysis Services Than It Is on the 32-Bit Version =

Article ID: 830722

Article Last Modified on 10/25/2005

-

APPLIES TO


 * Microsoft SQL Server 2000 Analysis Services

-



Bug #: 14163 (Plato7x)



SYMPTOMS
When processing a cube on a computer that is running the 64-bit Microsoft SQL Server 2000 Analysis Services, the performance of the aggregation and the index creation step may be slower than it is on a computer that is running the 32-bit Microsoft SQL Server 2000 Analysis Services. The problem occurs if the following conditions are true:


 * The cube contains a measure that uses the Distinct Count aggregation function.
 * The cube uses Multidimensional OLAP (MOLAP) or Hybrid OLAP (HOLAP) storage.
 * The cube has aggregations designed.

When this problem occurs, the Alignment Fixups/sec counter of the System object in the system monitor will increase dramatically.



CAUSE
This problem is caused by a data alignment issue in one of the data comparison routines in the Analysis Services aggregation creation process.



WORKAROUND
To work around this problem, use either of the following methods:


 * Use a calculated measure instead of the Distinct Count aggregation function.
 * Remove all the designed MOLAP aggregations.



Service pack information
To resolve this problem, obtain the latest service pack for Microsoft SQL Server 2000. For more information, click the following article number to view the article in the Microsoft Knowledge Base:

290211 How to obtain the latest SQL Server 2000 service pack

Hotfix information
The English version of this fix has the file attributes (or later) that are listed in the following table. The dates and times for these files are listed in coordinated universal time (UTC). When you view the file information, it is converted to local time. To find the difference between UTC and local time, use the Time Zone tab in the Date and Time tool in Control Panel.   Date         Time   Version            Size    File name --  21-Oct-2003  17:40  8.0.872.0       5,471,744  Msmdcb80.dll 21-Oct-2003 17:07  8.0.872.0       5,781,504  Msmdgd80.dll 21-Oct-2003 17:40  8.0.872.0       5,111,296  Msmdpump.dll 21-Oct-2003 17:07  8.0.872.0       5,969,920  Msmdsrv.exe 21-Oct-2003 17:07  8.0.872.0       6,646,272  Msolap80.dll 20-Sep-2003 01:26  8.0.861.0         201,216  Msolap80.rll Note Because of file dependencies, the most recent hotfix or feature that contains these files may also contain additional files.



STATUS
Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the &quot;Applies to&quot; section of this article.

This problem was first corrected in Microsoft SQL Server 2000 Service Pack 4.



MORE INFORMATION
You can detect data alignment problems by monitoring the Alignment Fixups/sec counter of the System object. The Alignment Fixups/sec counter indicates the rate at which alignment faults were fixed by the operating system. Ideally, this counter should always be zero. Low rates for this counter may indicate rare occurrences of data alignment problems that were not caught during the testing cycle for the application. These low rates typically will not affect performance. However, high rates can signify problems that were not expected. These problems may have a negative impact on application performance. Alignment faults will result in high kernel time because the system is busy re-aligning data. However, high kernel time does not imply alignment faults.

Alignment faults are caused by data alignment issues in the source code of applications. Generally, there is no workaround for alignment faults other than the following. You can change the underlying source code. You can also avoid the functionality in the program that causes the alignment faults.

