Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: @ù!^$ bugs in the editor

Anchor
TOC
TOC
Include Page
KBCOMMON:KB-CSSstyle
KBCOMMON:KB-CSSstyle

...

The CHARON Virtual Machine (VM) CPU can be calibrated with "set ace" directive and the following parameters:

enabled

Parameterenabled
TypeBoolean
Value

A CHARON-AXP emulated CPU is configured with the "enabled" command enabling the high performance Advanced CPU Emulation mode ("ACE"). The ACE option optimizes the HP Alpha instruction interpretation and significantly improves performance. It also requires approximately twice the amount of host memory allocated by CHARON instance itself to store the optimized code (Note that 2Gb of host memory + the amount of HP Alpha memory emulated per each CHARON instance is required).

ACE optimization is performed dynamically during execution. It does not need to write optimized code back to disk, ACE provides its full capability instantly. The optimization does not compromise the HP Alpha instruction decoding; CHARON-AXP remains fully HP Alpha hardware compatible and completely transparent to the HP Alpha operating systems and applications.

This configuration setting enables the ACE mode if the CHARON-AXP license permits it. If this configuration setting is omitted from the CHARON VM configuration file and the license permits it, "true" is the default, otherwise "false" is the default.

Example:

set ace enabled = false


Info

"set ace enabled=true" is ignored when the license does not permit ACE operation.

The ACE mode is disabled when the host system does not meet the minimum physical requirements for this operation. If the emulator appears not to run at its normal performance, check the log file for a change in the ACE mode and verify that sufficient host resources, especially memory, are available.

cpu_architecture

Parameter

cpu_architecture

Type

Text String

Value

Specifies the architecture of the virtual Alpha CPU. Can be one of the following: EV4, EV45, EV5, EV56, EV6, EV67, EV68

Example:

set ace cpu_architecture = EV6

Refer to Setting of a particular HP Alpha model to find an appropriate value of the HP Alpha architecture per each HP Alpha model supported by CHARON-AXP.


Div
classpagebreak


cache_size

Parameter

cache_size

TypeValue
Value

(warning) This parameter may affect Charon performance. Do not change this parameter until advised by Stromasys

"cache_size" defines the amount of memory in megabytes allocated to the ACE cache.

Default value is 1GB (1024 MB).

Example:

set ace cache_size = 2048

This parameter may be changed for performance optimization in case of some guest OS specific tasks (see the section below).

num_translators

Parameter

num_translators

TypeValue
Value

(warning) This parameter may affect Charon performance. Do not change this parameter until advised by Stromasys

"num_translators" defines the number of ACE translators.

Default value in most situations is number of I/O CPUs dedicated to CHARON (defined by "n_of_io_cpus" parameter) minus 1, but in some specific situations it may be set to some other value for better performance.

Example:

set ace num_translators = 4


Div
classpagebreak


host_options

Parameter

host_options

TypeText String
Value

(warning) This parameter may affect Charon performance. Do not change this parameter until advised by Stromasys

"host_options" defines options of ACE (DIT) translator and code-generator. Those options affect Charon performance.

Default settings are set to optimize performance for most geust OS (VMS and Tru64) usage profiles. However there are some profiles (for example OpenVMS compilation tasks) where the default settings do not provide optimal perfromance.

The following switches are available to user:

1. --fixed-variant=[X]

The value X can be one of three options: [-1, 0, 1]. This value defines the desired translation variant. Set -1 for dynamic (default) or 0 or 1 for the fixed number implemented by the translator.

2. --x64-optimize or --x64-nooptimize 

This switch enables translation optimizations (the default is to optimize).

(warning) Default parameters have been changed in Charon version 4.9 compared to previous versions (4.8 and below). If Charon system demonstrates lower performance after upgrade to version 4.9, please test the system with host_options switched to default 4.8 settings:

set ace host_options = "--fixed-variant=0 --x64-nooptimize"

Note that in this case the parameter "num_translators" must be set to the number of I/O CPUs dedicated to CHARON (see the "n_of_io_cpus" parameter). Also note that changing parameter "cache_size" can be an alternative solution too (see the section below).


Div
classpagebreak


Enabling the old style performance optimization

Despite the fact that CHARON is already optimized for wide range of the guest OS tasks, there may be some situations (for example OpenVMS compilation tasks) when performance degradation may reach about 50% of the version 4.8.

In this case the following solutions can be applied:

Enlarging ACE cache size

Try this solution first. It is recommended to enlarge the ACE cache size at least in 2 times as it is shown in the following example:

set ace cache_size = 2048

If this solution does not work for the specific guest OS tasks, apply also the next solution.

Setting specific ACE host options

Set the following set of options in the configuration file:

set session n_of_io_cpus = <N>
set ace num_translators = <N>
set ace host_options = "--fixed-variant=0 --x64-nooptimize"

where <N> is number of the I/O CPUs dedicated to CHARON. If this value is not set (the default value is used) it is recommended to specify it explicitly.

Include Page
KBCOMMON:DOC-GoToToc
KBCOMMON:DOC-GoToToc
 

RAM

The CHARON VM memory subsystem is permanently loaded and has the logical name "ram" 

size

Parametersize
TypeNumeric
ValueSize of the emulated memory in MB.


Example:

set ram size = 2048

The amount of memory is capped at a maximum, this is defined in the CHARON license key. If the host system cannot allocate enough memory to map the requested emulated memory, CHARON VM generates an error message in the log file and reduces its effective memory size.

...

Parametersync_to_host
TypeText string
Value

Specifies whether and how the guest OS time is synchronized with the CHARON host time.

Syntax:

set TOY sync_to_host = "{as_vms | as_tru64 | as_is}"

where:

  • as_vms: if the guest OS is OpenVMS/AXP and its date and time must be set to the host's date and time each time it boots.
  • as_tru64: if the guest OS is Tru64 UNIX and its date and time must be set to the host's date and time each time it boots.
  • as_is: if the TOY date and time must be set to the host's UTC date and time

Example:

set TOY sync_to_host = "as_vms"

To synchronize the guest OS with TOY, use the following commands (from "SYSTEM"/"root" account):

  • On OpenVMS/AXP, use: $ set time
  • On Tru64 UNIX, use: # date -u `consvar -g date | cut -f 3 -d ' '`

The default value is "not specified" - it means that by default CHARON does not synchronize its guest OS time with the CHARON host time but collects date and time from the file specified with "container" parameter.

(warning) If "sync_to_host" parameter is specified there is no need to specify "container" parameter in addition.

Example

set toy container="C:\Charon\my_virtual_system.dat"

The CHARON VM time zone may be different from that of the host system. Correct CHARON time relies on the correctness of the host system time to calculate the duration of any CHARON “offline” periods. (i.e. while the virtual system is not running). Every time CHARON comes on line it calculates a Delta time (the system time is used if there is no TOY file). Therefore, if the host system time is changed while CHARON VM is not running, the CHARON time may be incorrect when CHARON VM is restarted and the CHARON time must be set manually.

...

Example for AlphaServer 400, DS, ES, GS

set ISA clock_period=1000

Example for AlphaServer 800, 1000, 1000A, 1200, 2000, 2100, 4000, 4100

...

HP AlphaStation 200 - 400

set session hw_model=set rom system_name=set ace cpu_architecture=set rom dsrdb[0]=
AlphaServer_400AlphaStation 200 4/100EV41156
AlphaServer_400AlphaStation 200 4/133EV41088
AlphaServer_400AlphaStation 205 4/133EV41250
AlphaServer_400AlphaStation 255 4/133EV41257
AlphaServer_400AlphaStation 200 4/166EV41087
AlphaServer_400AlphaStation 205 4/166EV41251
AlphaServer_400AlphaStation 255 4/166EV41258
AlphaServer_400AlphaStation 400 4/166EV41086
AlphaServer_400AlphaStation 205 4/200EV41252
AlphaServer_400AlphaStation 255 4/200EV41259
AlphaServer_400AlphaStation 200 4/233EV451151
AlphaServer_400AlphaStation 205 4/233EV451253
AlphaServer_400AlphaStation 255 4/233EV451260
AlphaServer_400AlphaStation 400 4/233EV451152
AlphaServer_400AlphaStation 205 4/266EV451254
AlphaServer_400AlphaStation 255 4/266EV451261
AlphaServer_400AlphaServer 300 4/266EV451593
AlphaServer_400AlphaStation 400 4/266EV451153
AlphaServer_400AlphaStation 400 4/266EV451154
AlphaServer_400AlphaStation 200 4/300EV451157
AlphaServer_400AlphaStation 205 4/300EV451255
AlphaServer_400AlphaStation 255 4/300EV451262
AlphaServer_400AlphaStation 400 4/300EV451160
AlphaServer_400AlphaStation 205 4/333EV451256
AlphaServer_400AlphaStation 255 4/333EV451263

...

CHARON-AXP allows to set an exact System Marketing Model (SMM) for a given model of HP Alpha, for example:

set rom dsrdb[0]=1090

Refer to Setting of a particular HP Alpha model to find allowed values of SMM per each HP Alpha model supported by CHARON-AXP.

...