Using NUMA Nodes with SQL Server
Its a physical server on windows 2012 R2 standard. It has 4 sockets with 10 cores per socket and 20 logical procesors per socket total 80 from error log what i see. Its SQL2012 trying to move to 2017 


Ok.  The memory on this box is seperated into 4 seperate nodes, each attached to a single socket.  SQL Server will use memory across all the sockets, and since much of SQL Server memory is used for caching database pages and query plans, there will be significant amounts of cross-node memory access.  And that's OK.  Query memory grants will be allocated on the local node for the worker running the task.

SQL Server has several resources it allocates per NUMA node, and for SQL Server 2016+ will automatically subdivide large NUMA nodes with the Automatic Soft-NUMA feature.  

So on the one hand there's nothing you can do about the physical configuration of the server memory, and on the other there's nothing you need to do as SQL Server will automatically configure itself to use the NUMA nodes most effectively.


  Is there a way we can measure if 2 nodes might work better than 4 nodes for future design ?


Basically fewer nodes is better, but there's a limit to how many cores and how much RAM you can put on a single NUMA node.

Most of the cross-NUMA node memory access should be in the Buffer Pool, which you can track with a performance counter:

SQL Server: Buffer Node Remote Note page lookups/sec
    Indicates the number of lookup requests from this node which were satisfied from other nodes.