Difference between pages "r7.1.1:Function benchmark pal numa free" and "r7.1.1:Function libbenchmark misc pal helper add logical processor node to topology tree"

From liblfds.org
(Difference between pages)
Jump to navigation Jump to search
m (1 revision imported)
 
m (1 revision imported)
 
Line 1: Line 1:
{{DISPLAYTITLE:function benchmark_pal_numa_free}}
{{DISPLAYTITLE:function libbenchmark_misc_pal_helper_new_topology_node}}
==Source Files==
==Source Files==
  └───test_and_benchmark
  └───test_and_benchmark
     └───benchmark
     └───libbenchmark
        ├───inc
        │  └───libbenchmark
        │          libbenchmark_porting_abstraction_layer.h
         └───src
         └───src
             └───porting_abstraction_layer_numa_free.c
             └───libbenchmark_misc
                    libbenchmark_misc_pal_helpers.c
 
==Opaque Structures==
struct [[r7.1.1:struct libbenchmark_topology_state|libbenchmark_topology_state]];


==Prototype==
==Prototype==
  void benchmark_pal_numa_free( void *memory, lfds711_pal_uint_t size_in_bytes );
  void libbenchmark_misc_pal_helper_add_logical_processor_node_to_topology_tree( struct libbenchmark_topology_state *ts,
                                                                                lfds711_pal_uint_t logical_processor_number,
                                                                                enum flag windows_processor_group_inuse_flag,
                                                                                lfds711_pal_uint_t windows_processor_group_number );


==Parameters==
==Parameters==
''void *memory''
''struct libbenchmark_topology_state *ts''
: A pointer to an allocation returned by ''benchmark_pal_numa_malloc''.
: A pointer a ''struct libbenchmark_topology'' obtained from ''libbenchmark_pal_populate_topology''.
 
''lfds711_pal_uint_t logical_processor_number''
: The logical processor number of the logical processor to add to the topology tree pointed to by ''ts''.
 
''enum flag windows_processor_group_inuse_flag''
: An ''enum flag'' which indicates whether or not the ''windows_processor_group_number'' argument contains a valid value (for that field is only meaningful on Windows 7 and greater).


''lfds711_pal_uint_t size_in_bytes''
''lfds711_pal_uint_t windows_processor_group_number''
: The number of bytes in the allocation pointed to by ''memory''.  Some NUMA ''free'' functions require this information, so the abstraction has to support it.
: The Windows processor group number of the logical processor to add to the topology tree pointed to by ''ts''.  This value is only meaningful on Windows 7 and greater.  It will only be used if the ''windows_processor_group_inuse_flag'' is set to ''RAISED'', and so if not used, can be set to any value.  Zero is as good a choice as any other.


==Return Value==
==Return Value==
Line 20: Line 36:


==Example==
==Example==
void benchmark_pal_numa_free( void *memory, lfds711_pal_uint_t size_in_bytes )
{
  assert( memory != NULL );
  // TRD : size_in_bytes can be any value in its range
  numa_free( memory, size_in_bytes );
  return;
}


==Notes==
==Notes==
Returns an allocation made by ''libbenchmark_pal_numa_malloc'' to the system.
This helper function is used by ''libbenchmark_pal_populate_topology'' to add a logical processor node to the topology tree.


==See Also==
==See Also==
* [[r7.1.1:Porting Guide (benchmark)|Porting Guide (benchmark)]]
* [[r7.1.1:Porting Guide (libbenchmark)|Porting Guide (libbenchmark)]]
* ''[[r7.1.1:function libbenchmark_pal_populate_topology|libbenchmark_pal_populate_topology]]''

Latest revision as of 20:16, 17 February 2017

Source Files

└───test_and_benchmark
    └───libbenchmark
        ├───inc
        │   └───libbenchmark
        │           libbenchmark_porting_abstraction_layer.h
        └───src
            └───libbenchmark_misc
                    libbenchmark_misc_pal_helpers.c

Opaque Structures

struct libbenchmark_topology_state;

Prototype

void libbenchmark_misc_pal_helper_add_logical_processor_node_to_topology_tree( struct libbenchmark_topology_state *ts,
                                                                               lfds711_pal_uint_t logical_processor_number,
                                                                               enum flag windows_processor_group_inuse_flag,
                                                                               lfds711_pal_uint_t windows_processor_group_number );

Parameters

struct libbenchmark_topology_state *ts

A pointer a struct libbenchmark_topology obtained from libbenchmark_pal_populate_topology.

lfds711_pal_uint_t logical_processor_number

The logical processor number of the logical processor to add to the topology tree pointed to by ts.

enum flag windows_processor_group_inuse_flag

An enum flag which indicates whether or not the windows_processor_group_number argument contains a valid value (for that field is only meaningful on Windows 7 and greater).

lfds711_pal_uint_t windows_processor_group_number

The Windows processor group number of the logical processor to add to the topology tree pointed to by ts. This value is only meaningful on Windows 7 and greater. It will only be used if the windows_processor_group_inuse_flag is set to RAISED, and so if not used, can be set to any value. Zero is as good a choice as any other.

Return Value

No return value.

Example

Notes

This helper function is used by libbenchmark_pal_populate_topology to add a logical processor node to the topology tree.

See Also