Skip to Content
Technical Articles
Author's profile photo Dennis Padia

SAP HANA Hardware and Cloud Measurement Tools (HCMT) – Replacement of HWCCT Tool

Recently before installing SAP HANA on certified server, I thought of running SAP HANA Hardware Configuration Check Tool on the provisioned server. The latest available HWCCT version in service marketplace is 244 and I have used the same to perform the check.

NOTE: I have also used version 242 and the details provided below are encountered in both the version. 

First error you will encounter on running hwcct command for version 242 and 244 will be –

./hwcct: error while loading shared libraries: libhdbtmcachebase.so: cannot open shared object file: No such file or directory

I was able to get this file from the existing HANA database and copied this file to the lib directory of hardwareConfigurationTool folder

NOTE: This file is only available in HANA 2.0 SPS 04. You won’t be able to find this file in lower HANA database version. 

After that, above error got resolved. But now during landscape evaluation I encountered below error –

Failed to parse system information in readMemoryDistributionInfo, size=34754
Failed to parse system information in readNetworkInfo, size=34754
Error while running HWCCT:exception 1: no.1000010 (ltt/impl/strtod.cpp:707) TID: 24197
Invalid argument
exception throw location:
1: 0x00007fff9305d610 in ltt::throwInvalidArgument(char const*, int)+0x30 at new.cpp:296 (libhdblttbase.so)
2: 0x0000000126eb0d80 in int lttStoi32<char>(char const*, unsigned long*, int) [clone .constprop.46]+0x180 at iterator_base.hpp:1060 (hwcct)
3: 0x0000000126eb290c in ValidateSystemInfo::checkFSConfig4DataLog(ltt::map<ltt::basic_string<char, ltt::char_traits<char>, ltt::integral_constant<int, 64> >, ltt::basic_string<char, ltt::char_traits<char>, ltt::integral_constant<int, 64> >, ltt::less<ltt::basic_string<char, ltt::char_traits<char>, ltt::integral_constant<int, 64> > >, ltt::rb_tree_balancier>&) [clone .constprop.14]+0x1ec at string.hpp:603 (hwcct)
4: 0x0000000126ecab50 in ValidateSystemInfo::checkFileSystemList(ltt::vector<ltt::map<ltt::basic_string<char, ltt::char_traits<char>, ltt::integral_constant<int, 64> >, ltt::basic_string<char, ltt::char_traits<char>, ltt::integral_constant<int, 64> >, ltt::less<ltt::basic_string<char, ltt::char_traits<char>, ltt::integral_constant<int, 64> > >, ltt::rb_tree_balancier> >&, ltt::basic_string<char, ltt::char_traits<char>, ltt::integral_constant<int, 64> >&)+0x980 at ValidateSystemInfo.cpp:1428 (hwcct)
5: 0x0000000126ecbb84 in ValidateSystemInfo::validateFilesystemConfig()+0x3e4 at memory.hpp:1258 (hwcct)
6: 0x0000000126ebd798 in ValidateSystemInfo::validate(ltt::basic_string_retval<char, ltt::char_traits<char>, ltt::integral_constant<int, 64> > (ValidateSystemInfo::**)(), int&, ltt::basic_string<char, ltt::char_traits<char>, ltt::integral_constant<int, 64> >&)+0x1e8 at ValidateSystemInfo.cpp:1909 (hwcct)
7: 0x0000000126f007a8 in hwcctTests::EvalOS::runTest()+0x1698 at LandscapeTest.cpp:197 (hwcct)
8: 0x0000000126ead3f8 in main+0xf58 at HwcctHelper.cpp:112 (hwcct)
9: 0x00007fff93452140 in System::mainWrapper(int, char**, char**, void*)+0x50 at SystemMutex.cpp:203 (libhdbbasis.so)
10: 0x00007fff926a3920 in generic_start_main.isra.0+0x140 (libc.so.6)
11: 0x00007fff926a3b1c in __libc_start_main+0xac (libc.so.6)
12: 0x00007fff93445544 in __libc_start_main+0xa4 at IsInMain.cpp:78 (libhdbbasis.so)

exception type information:
- 0: public ltt::invalid_argument@0x7fff930de780 SI
- 0: public ltt::logic_error@0x7fff930deac0 SI
- 0: public ltt::exception@0x7fff930dec40

There is no SAP Note which addresses above issue. At first I thought there might be some additional pre-requisites as I’m using recently certified SUSE version (SLES 15 SP 1) but I could not find any. I raised message to SAP and found that – Its a programming error which is reported since HWCCT 242 and 244 version.

Also SAP HANA Hardware Configuration Check Tool (HWCCT) has been end of life-cycle (EOL) on Aug 1st, 2019. So now no further releases or patches will be provided to accommodate its fix. (As per SAP)

What’s NEXT?

A new SAP HANA hardware and cloud measurement tools (HCMT) is or will be introduced as a replacement of HWCCT. I could not find any official announcement of this tool but as per SAP, HCMT will be an official tool to check server before deploying HANA system in future.

HCMT is available for download in Service Market Place, so thought of giving it a try. Below is the official SAP Note for this tool –

2493172 – SAP HANA Hardware and Cloud Measurement Tools

Download the pdf attached in above SAP Note as it gives details on the usage of HCMT tool.

HCMT Overview

The SAP HANA hardware and cloud measurement tool (HCMT) allows customers and partners to collect information on the infrastructure intended for SAP HANA deployment. The tool measures whether the planned hardware or cloud system complies with the requirements defined by SAP.

Furthermore, it gauges whether the system planned for SAP HANA deployment can achieve satisfactory base performance by meeting the minimum requirements defined as well as satisfactory overall performance given the intended SAP HANA usage.

The measurement results are saved into a single file, which can be uploaded to the SAP HANA hardware and cloud measurement analysis for further analysis and reporting.

NOTE: SAP HANA hardware and cloud measurement tools are based on the requirements of SAP HANA Platform 2.0 or newer. For older SAP HANA versions, refer to the SAP HANA Hardware Configuration Check Tool

Download

You can download the tool from the SAP Support Portal at https://launchpad.support.sap.com/#/softwarecenter –> SUPPORT PACKAGES & PATCHES –> Search for: “hana optim”

Unlike HWCCT, which is ready to use just by extracting SAR file. Here, with HCMT we need to install the tool on the server.

First extract the tool using SAPCAR

It will have setup folder, navigate into the folder and install the tool using hcmtsetup command

After setup, the following folder structure is available:

The SAP HANA hardware and cloud measurement tool performs a series of automated tests, for example network tests, file system consistency tests, system management BIOS tests, and CPU benchmark tests.

The duration and repeat rate of the tests depends on the type of execution plan that you intend to run.

The following execution plans are available:

executionplan.json – Default execution plan that helps you to check if the KPIs for SAP HANA certification are met.

full_executionplan.json – Performs the same tests as the default execution plan, but has a higher test repeat rate and thus a longer test duration. This test is used for SAP HANA certification.

So for people who wants to validate HANA server before installing should use executionplan.json plan to test their HANA servers

NOTE: I have executed this tool for Scale-up System 

Prerequisites

  • You have installed the latest version of the SAP HANA hardware and cloud measurement tool on the system.
  • You have at least 20 GB of free storage space in the location where SAP HANA data can be placed during the test.
  • When using nonvolatile memory, mounts for all hosts or an alias of the same name must be available.
  • Port 50001 must be open for communication.

NOTE: This tool will run for a while, so make sure you run this tool in one of your jump server.

# ./hcmt -v -p <path>/setup/config/executionplan.json

Once the execution is completed it will create a file named hcmtresult-<dateandtime>.zip inside the same folder. Transfer that zip file into you desktop

We need to upload the measurement results file and analyze the results to see whether the systems meet the configuration and performance requirements.

https://hotui-supportportal.dispatcher.hana.ondemand.com/index.html

Click on “Manage Your Systems”

Click on (+) Add System

Provide details based on your usage and click Save

Click on “Upload Your Measurement Results”

If you have multiple system configured, make sure you upload measurement result to appropriate system.

Review and Submit

Analyzing the Measurement Results

SAP HANA hardware and cloud measurement analysis provides a graphical and textual representation of your measurement results. It allows you to see which parts of your system are doing well and which parts may need some changes or improvements to achieve the required performance.

You can read the pdf attached to SAP Note 2493172 on how to analyze the result..

Pro’s

  1. Nice centralized repository for all of our HANA Server checks
  2. Graphical insight but tedious to interpret result.

Con’s 

  1. Difficult to read or get insight from the uploaded measurement as the result is not provided in the form of dashboard which can be drilled down to get more insight (like S/4HANA Readiness Check)
  2. Currently there is no option to share the result to other S-User
  3. I would rather prefer a quick summary in one file like below from HWCCT tool over individual selection

But as SAP suggested that this tool is still in development. So probably we can expect to get more holistic insight from this tool in future.

Regards,

Dennis Padia

Assigned Tags

      29 Comments
      You must be Logged on to comment or reply to a post.
      Author's profile photo Sandeep Karnati
      Sandeep Karnati

      Thank you Dennis Padia for sharing

      Author's profile photo Dennis Padia
      Dennis Padia
      Blog Post Author

      Thank you Sandeep.

      Author's profile photo Declan McArdle
      Declan McArdle

      Hmm, I’ve just spent some time doing HWCCT for a load of HANA systems.  Looks like I need to do it all again.

      Also, I see your Kernel passed.  I appear to have a string comparison issue:

       

      validateLinuxKernelVersion    :                                         FAILED
               Severity:  HIGH
                 Reason:  Kernelversion is too low and might have bugs
       related to XFS. For more details review SAP Note: 2292690
      
       Linux kernel version:     3.10.0-957.el7.x86_64
       Minimum required version: 3.10.0-957.1.3

       

      Author's profile photo Dennis Padia
      Dennis Padia
      Blog Post Author

      Hello Declan,

      Yes HWCCT perform kernel comparison. For new servers, I usually prefer to update kernel to the latest version.

      Regards,

      Dennis Padia

      Author's profile photo John Aiyede
      John Aiyede

      Well done Dennis!

      Thanks for the update.

      Author's profile photo Dennis Padia
      Dennis Padia
      Blog Post Author

      Thanks John

      Author's profile photo Vijaykumar Chaudhari
      Vijaykumar Chaudhari

      Thanks Dennis for putting this together as concise info !

      Author's profile photo Dennis Padia
      Dennis Padia
      Blog Post Author

      Thank you Vijay. Hope it can be useful to others.

      Author's profile photo Marco Bortolon
      Marco Bortolon

      Hello Dennis, thanks for this blog!

      This is not clear for me:
      full_executionplan.json – Performs the same tests as the default execution plan, but has a higher test repeat rate and thus a longer test duration. This test is used for SAP HANA certification.
      So for people who wants to validate HANA server before installing should use executionplan.json plan to test their HANA servers

       

      So, for HANA certification like HWCCT, should I use executionplan.json or full_executionplan.json ?

       

      Thanks!

      Author's profile photo Dennis Padia
      Dennis Padia
      Blog Post Author

      In order for any server to be certified for HANA by any vendors, they also need to run this HCMT tool.

      Out of two execution plan that are available (executionplan.json and full_executionplan.json), hardware/cloud vendor usually run HCMT tool with full_executionplan.json which has higher test repeat rate, which means when HCMT is executed using full_executionplan.json each test will repeat 5 times instead of 2 times in executionplan.json which result in longer test duration. Both execution plan covers all the test but the only difference is that full_executionplan.json has higher repeat cycle for each test.

      In below screenshot, you can see repeat count is 2 which means excutionplan.json is used. If repeat count is 5, then full_executionplan.json is used. So each test here will be repeated 5 times instead of 2.

      For business or end user to validate server, they can run executionplan.json.

      Regards,

      Dennis Padia.

      Author's profile photo Hitesh Rohilla
      Hitesh Rohilla

      Very informative and detailed information. Thanks.

      Author's profile photo Somchid Siriponlai
      Somchid Siriponlai

      Hi Dennis,

      Thanks for your sharing.

      Author's profile photo Horacio Flores Colin
      Horacio Flores Colin

      Hi Dennis.

       

      I'm running the executionplan.json but It has 15 hours running, is there a way to stop it? or should I wait?

       

      Kindly advice.

       

      Regards.

      Author's profile photo Eliezer Dantas
      Eliezer Dantas

      https://tecseteletronica.loja2.com.br/

       

      Tecset Eletrônica

      Author's profile photo Amit Kumar Sharma
      Amit Kumar Sharma

      Hi Dennis,

       

      Great Work.. Just my one Query . I have follow same step and its taking too much time. Its running from last 48 Hr. but still running. Might be will take another 24 Hr.

      I have run this script executionplan.json 

      I have 512 GB RAM and 32 CPU server and 3.5 TB Storage with different different partition.

      Is it take generally much time ? or Something going wrong on my server.

      Please help.

       

      Thanks,

      Amit

      Author's profile photo Tatjana Schumakowa
      Tatjana Schumakowa

      Hi Dennis

      Thanks for your sharing.  I’m running the executionplan.json and got this result:

       

      what can be done about it?

       

      Many Thanks

      Best Regards

      Author's profile photo Sumit Jaiswal
      Sumit Jaiswal

      Hi Tatjana,

      HCMT or HWCCT perform high level checks against the predefined KPIs. The results help you to understand if the server is properly configured for HANA installation.

      In your case, it seems you have already installed your database ( as it shows you have set the logmode 'overwrite'). If so, you must execute SQL: "HANA_IO_DiskDetails" from 1969700. 

      The result of the query will give you details on disks including queue length, latency, throughput and request rate.

      Sumit

      Author's profile photo Tatjana Schumakowa
      Tatjana Schumakowa

      Hi Sumit,

      Many thanks for your support.


      I uninstalled my HANA DB, but still got the following result:

      How can you improve that?

      What could be the reason for this ?
      Could I get performance problems if I install on this hardware?

       

      Many Thanks

      Best Regards

      Author's profile photo Sumit Jaiswal
      Sumit Jaiswal

      Hi Tatjana,

      I didn't mean you to uninstall the database, rather I suggested you to execute the SQL for a better understanding of the disks throughput and latency for the operational database :). However, it's ok if you did.

      What could be the reason for this ?

      Different kind of disks have their upper limitations in terms of IOPS and throughput (for the way they are build) to read and write the data within them. The disk allocated to your log volume falls a little short to the KPI that SAP has defined for smooth operations.

      Could I get performance problems if I install on this hardware?

      You haven't mentioned the hardware type. If it's intel's Westmere , even the worst value can be accepted.

      For other hardware : The throughput of the volume is just a little short (~ 235-240 MBps) which is fine as long as you are not going to run the system for a productive environment. If a high load productive environment, the logs have to be written at faster pace into the disk and if this does not happen, the transactions go slow down for end users. if it's not a highly used production or is going to be a non production system, you should not worry much.

      How can you improve that?

      • Ensure you don't have multiple filesystems on same mount point.
      • You can tell hardware vendor to stripe the disks before formatting the file system for /hana/log. This will add more throughput to the file systems.
      • If you are using platforms like azure, AWS, GCP or alibaba : Select the IO provisioned SSD or Optimized HDD volumes ( in AWS) or HDD volumes (in azure) for productive usage.

       

      Author's profile photo Tatjana Schumakowa
      Tatjana Schumakowa

      Hi Sumit,

      Many thanks for your response.
      Our file systems look like this.

      Can this be due to the settings that should be made after the OS installation after the note (after the note note 2684254 - SAP HANA DB: Recommended OS settings for SLES 15 / SLES for SAP Applications 15). Or is it really just the hardware.

       

      Many Thanks

      Author's profile photo Tatjana Schumakowa
      Tatjana Schumakowa

      Hi Sumit,

      Many thanks for your response.
      The filesystems have different mount points.

      /dev/sda -> /hana/shared

      /dev/sdb -> /hana/data

      /dev/sdc -> /hana/log


      Can this be due to the settings that should be made after the OS installation after the note (after the note note 2684254 - SAP HANA DB: Recommended OS settings for SLES 15 / SLES for SAP Applications 15).

      Or is it really just the hardware ?

       

      Many Thanks

      Author's profile photo Sumit Jaiswal
      Sumit Jaiswal

      Hi Tatjana,

      I see your log volume is on normal physical mount. You can consider my above suggestions based on your requirements and environment.

      The suggestions in note 2684254 are related to OS and Linux kernels. The improper settings can impact memory ( e.g. OS doesn't allocate or release memory) or issues related to frequent disconnections and OS reboots because of old/incompatible linux kernel ( I actually have faced these issues).

      However, they have nothing to do with throughput of a volume ( i.e. log volume in your case). This is more of the hardware thing.

      Author's profile photo Markus Weber
      Markus Weber

      Hi,

      is the tool able to tell me if my vendor applied the correct core-to-ram ratio or if the VMware settings for CPU are correct?

      How may i check if all relevant checks are succeded and my system is certified or correctly setup?

       

      Thanks, Markus

      Author's profile photo Joseph Chinnabathini
      Joseph Chinnabathini

      Nice blog Dennis. Most of us don't read the complete instructions, as the default execution runs 5 times.

      We can change that in the executionplan.json file from 5 to >or=1. 

      Thanks,

      JC

       

      Author's profile photo David Ingersoll
      David Ingersoll

      Very good blog.  I ran this on a 2566GB HANA DB using the executionplan.json.  After 9 hours it completed and returned a 14Kb zip file.  I uploaded that and after clicking submit, I get an error: Archive not valid: missing or inconsistent manifest.json.

       

      I opened the zip on my desktop and don't see a manifest.json.  I only see the files shown in this screen shot.  It's possible my jump box session was timed out, but I noticed that the HCM tool does keep the RHEL console screen actifve with a cursor spinning.

      Author's profile photo Yugandhar Penumuru
      Yugandhar Penumuru

      Hi All,

      Is there any way to check for the multiple volumes at the same time.

      like for example, I have two data volumes & two log volumes. How can we check for those at the same time.

      DataVolumes
      /hana/data/SID/mnt00001
      /hana/data/SID/mnt00002

      LogVolumes
      /hana/log/SID/mnt00001
      /hana/log/SID/mnt00002

      Also if IO throughput failed for read/write, from where we need to check for recommendations. Can anyone please help on this?

       

       

       

       

       

      Author's profile photo Sreekumar Nandalmajan
      Sreekumar Nandalmajan

      Hello  Dennis,

       

      Nice Blog and informative!!

      Thanks !!

      i am facing typical scenario where i am not getting bar at all in the Analysis.

      Is this something wrong ? i am looking for BAr analysis which clearly indiactes where i can focus and correct.

      Please suggest

      Regards,

      Sreekumar N

      Author's profile photo Christian Schroeder
      Christian Schroeder

      Hi,

      running HCMT as SIDadm or root user on every server?

       

      Thanks and best regards

      Christian

      Author's profile photo Ambarish Satarkar
      Ambarish Satarkar

      Nice blog Dennis. Appreciate it.

       

      Do we have any reference listing the current limitations of the HCMT tool?

       

      Basically I observed that HCMT tool does not consider additional data files on a node . Even though we have 4 data files on 2 nodes of Hana instance it tests 1 data file on each node. This impacts the write throughput results.

       

      Also can this tool be considered for predicting SAP performance testing assessment?