Home > Workload Solutions > SAP > Guides > SAP HANA TDI Guides > Dell Validated Design for SAP HANA TDI with PowerEdge Systems > Preparing the Intel Optane memory
Configuring the Intel Optane memory DIMMs consists of:
Create a goal configuration to access the memory DIMMs using:
Note: You can create a goal configuration without any operating system. Creating a namespace requires an SAP HANA-supported operating system that includes the ndctltool.
To create a goal configuration using iDRAC:
After completing the goal configuration, you have prepared the regions but not yet allocated the namespaces. To list all unallocated namespaces, run the ndctl command using the -i flag:
linux:~ # ndctl list -i
[
{
"dev":"namespace24.0",
"mode":"raw",
"size":0,
"uuid":"00000000-0000-0000-0000-000000000000",
"sector_size":512,
"state":"disabled",
"numa_node":0
},
{
"dev":"namespace26.0",
"mode":"raw",
"size":0,
"uuid":"00000000-0000-0000-0000-000000000000",
"sector_size":512,
"state":"disabled",
"numa_node":2
},
{
"dev":"namespace25.0",
"mode":"raw",
"size":0,
"uuid":"00000000-0000-0000-0000-000000000000",
"sector_size":512,
"state":"disabled",
"numa_node":1
},
{
"dev":"namespace27.0",
"mode":"raw",
"size":0,
"uuid":"00000000-0000-0000-0000-000000000000",
"sector_size":512,
"state":"disabled",
"numa_node":3
}
Depending on the number of populated sockets in your system, you might have to repeat the namespace creation steps. Perform the following steps two or more times as necessary:
linux:~ # ndctl create-namespace
{
"dev":"namespace24.0",
"mode":"fsdax",
"size":"744.19 GiB (799.06 GB)",
"uuid":"8bc41612-bebc-4ead-bbca-6cc6f0b93be0",
"raw_uuid":"3c1b2d89-31ac-4686-a6d0-ac22260d7515",
"sector_size":512,
"blockdev":"pmem24",
"numa_node":0
}
linux:~ # ndctl create-namespace
{
"dev":"namespace26.0",
"mode":"fsdax",
"size":"744.19 GiB (799.06 GB)",
"uuid":"2785910e-a01d-42fc-990c-0b8f9563e49e",
"raw_uuid":"6f116048-9f99-4d14-b3f8-b47a8473da7e",
"sector_size":512,
"blockdev":"pmem26",
"numa_node":2
}
linux:~ # ndctl create-namespace
{
"dev":"namespace25.0",
"mode":"fsdax",
"size":"744.19 GiB (799.06 GB)",
"uuid":"a4809f98-69c4-4fb0-b3f9-4cbb9293716f",
"raw_uuid":"84272619-6a3c-42ea-8d31-95198ff67589",
"sector_size":512,
"blockdev":"pmem25",
"numa_node":1
}
linux:~ # ndctl create-namespace
{
"dev":"namespace27.0",
"mode":"fsdax",
"size":"744.19 GiB (799.06 GB)",
"uuid":"ea4cf63a-9910-408a-bae6-6b503e734dd8",
"raw_uuid":"feae79ac-f0ab-4bf2-a7d7-4b6591dcbe0d",
"sector_size":512,
"blockdev":"pmem27",
"numa_node":3
}
You now have either two or four block devices configured in the system. The names of the block devices start with pmem and a number and are displayed in the listing in the last step in the “blockdev” section. In the following example, the names are /dev/pmem24, /dev/pmem25, /dev/pmem26, and /dev/pmem27.
Create an xfs file system by running the following mkfs.xfs command:
linux:~ # mkfs.xfs /dev/pmem24
meta-data=/dev/pmem24 isize=512 agcount=4, agsize=48770944 blks
= sectsz=4096 attr=2, projid32bit=1
= crc=1 finobt=1, sparse=0, rmapbt=0, reflink=0
data = bsize=4096 blocks=195083776, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal log bsize=4096 blocks=95255, version=2
= sectsz=4096 sunit=1 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
linux:~ # mkfs.xfs /dev/pmem25
meta-data=/dev/pmem25 isize=512 agcount=4, agsize=48770944 blks
= sectsz=4096 attr=2, projid32bit=1
= crc=1 finobt=1, sparse=0, rmapbt=0, reflink=0
data = bsize=4096 blocks=195083776, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal log bsize=4096 blocks=95255, version=2
= sectsz=4096 sunit=1 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
linux:~ # mkfs.xfs /dev/pmem26
meta-data=/dev/pmem26 isize=512 agcount=4, agsize=48770944 blks
= sectsz=4096 attr=2, projid32bit=1
= crc=1 finobt=1, sparse=0, rmapbt=0, reflink=0
data = bsize=4096 blocks=195083776, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal log bsize=4096 blocks=95255, version=2
= sectsz=4096 sunit=1 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
linux:~ # mkfs.xfs /dev/pmem27
meta-data=/dev/pmem27 isize=512 agcount=4, agsize=48770944 blks
= sectsz=4096 attr=2, projid32bit=1
= crc=1 finobt=1, sparse=0, rmapbt=0, reflink=0
data = bsize=4096 blocks=195083776, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal log bsize=4096 blocks=95255, version=2
= sectsz=4096 sunit=1 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
For each PMEM device:
linux:~ # mkdir -p /hana/pmem/0; mkdir /hana/pmem/1; mkdir /hana/pmem/2; mkdir /hana/pmem/3
Note: The x-systemd.device-timeout parameter influences how long the system waits for the device to be ready. This example uses 20 minutes of initializing time. Decrease this value if necessary based on your landscape needs.
/dev/pmem24 /hana/p
mem/0 xfs noatime,dax,x-systemd.device-timeout=1200 1 2
/dev/pmem25 /hana/pmem/1 xfs noatime,dax,x-systemd.device-timeout=1200 1 2
/dev/pmem26 /hana/pmem/2 xfs noatime,dax,x-systemd.device-timeout=1200 1 2
/dev/pmem27 /hana/pmem/3 xfs noatime,dax,x-systemd.device-timeout=1200 1 2
linux:~ # mount -a -t xfs
linux:~ # df -h|egrep "File|pmem"
Filesystem Size Used Avail Use% Mounted on
/dev/pmem24 744G 792M 744G 1% /hana/pmem/1
/dev/pmem25 744G 792M 744G 1% /hana/pmem/2
/dev/pmem26 744G 792M 744G 1% /hana/pmem/3
/dev/pmem27 744G 792M 744G 1% /hana/pmem/4
Next, make SAP HANA aware of the new Intel Optane memory DIMMs:
Upgrade to SAP HANA SPS03 or later. In the [persistence]section of the global.ini file, provide a line with a comma-separated list of all mounted pmem devices:
[persistence]
basepath_persistent_memory_volumes=/hana/pmem/0;/hana/pmem/1;/hana/pmem/2;/hana /pmem/3
Extend the hdblcm tool to use two more options as well as the required installation parameters:
--use_pmem --pmempath=/hana/pmem
The hdblcm tool determines and uses all pmem devices below that /hana/pmem subfolder.
SAP HANA uses the persistent memory devices and loads data to them. You can also move databases and tables individually to a specific region (DRAM or PMEM).
The Dell SAP engineering team conducted a test on SAP HANA (BWoH) using SAP Business Warehouse. The test involved running complex queries through the whole SAP HANA stack (hardware, operating system, database, application). The test results showed a similar read performance between DRAM and Intel Optane memory, indicating that this technology facilitates access to greater amounts of data while balancing TCO.