Features Added in FOCUS 7.6.1

In this section:

Starting in FOCUS 7.6.1, performance is improved by use of the IBM/C compiler, by unlimited growth of the FOCSORT file as needed, by directly creating HOLD files in FOCUS format, and by compiling MODIFY procedures using native arithmetic.


Top of page

x
CPU Performance Improvement

FOCUS Release 7.6 is the first release to use the IBM/C compiler to achieve performance improvements in CPU consumption for mainframe applications on z/OS and z/VM. CPU performance appears to benchmark from 5% to over 40% better in Release 7.6 than the prior release, 7.3, and appears to be roughly equivalent to statistics as far back as Release 7.0.8R released in 1999.

The benchmark tests were designed to approximate parts of a "typical" customer application to project real world expectations. From the test details, FOCUS customers can extrapolate the benchmark results to their own applications to approximate what CPU gains they may achieve.

Compared to Release 7.3.9, expect 5-10% improvement in CPU utilization for data extraction and reporting (TABLE), and 30-40% improvement for database modification procedures (MODIFY and MAINTAIN). Data intensive utilities such as REBUILD that typically absorb large amounts of CPU show about 40% improvement. Local environmental factors may affect the individual savings attained, and though different CPU models perform at varying speeds, the ratio of performance gains should be similar.

The wide range of performance improvements across the various FOCUS functional areas reflect the ratio of Assembler versus C code used by the FOCUS product for the selected function. For example, reporting (TABLE) employs a large percentage of fast-executing Assembler code during the expensive extraction phase, so the new C compiler has little effect on CPU utilization for reporting. Database updates (MODIFY and MAINTAIN), however, are almost entirely written in C so the savings are measurably larger.

For complete details of the benchmark tests and results, see the Mainframe FOCUS Release 7.6 CPU Performance Improvement Benchmark white paper on the Information Builders Web site at:

http://www.informationbuilders.com/products/whitepapers/pdf/Mainframe_FOCUS_Rel_7.6_WP.pdf


Top of page

x
Unlimited FOCSORT

The FOCSORT file can grow to any size allowed by the operating system running and the available disk space. The user does not have to break a request up to accommodate massive files. In previous releases, the FOCSORT file was limited to 2 GB and the user received a FOC298 message when the FOCUS limit was exceeded. With no limit enforced by FOCUS, the operating system provides whatever warning and error handling it has for the management of a FOCSORT file that exceeds its limits.


Top of page

x
Direct HOLD FORMAT FOCUS

How to:

By default, a HOLD file in FOCUS format is now created directly, without using an intermediate sequential file and an internally generated MODIFY procedure to load the file, as in previous releases.

The SET DIRECTHOLD command controls whether the HOLD file is created directly or whether the HOLD file is loaded using an internally generated MODIFY procedure and an intermediate sequential file called FOC$HOLD.



x
Syntax: How to Control Whether a HOLD File in FOCUS Format is Created Directly
SET DIRECTHOLD = {ON|OFF}

Use the following syntax to issue the SET DIRECTHOLD command in a request.

ON TABLE SET DIRECTHOLD {ON|OFF}

where:

ON

Creates a FOCUS HOLD file directly without an intermediate sequential file and MODIFY procedure. ON is the default value.

OFF

Loads a FOCUS HOLD file using an internally generated MODIFY procedure and an intermediate sequential file called FOC$HOLD.


Top of page

x
Compiling MODIFY Expressions Using Native Arithmetic

How to:

Reference:

The native compiler for MODIFY processes COMPUTE, IF, and VALIDATE expressions using the arithmetic operations built into the underlying operating system. This native compiler eliminates internal format conversions and speeds up expression processing. It significantly enhances the speed of expressions that use long packed fields and date fields.

Note that MODCOMPUTE replaces the functionality previously provided by SET COMPUTE for MODIFY. SET COMPUTE is now only respected in the TABLE environment.

Note: Expression compilers for MODIFY are supported only in Mainframe environments. Linux on the Mainframe does not support these compilers.



x
Syntax: How to Control Compilation of MODIFY Expressions
SET MODCOMPUTE={NATV|NEW|OLD}

where:

NATV

Activates the native compiler for MODIFY expressions. NATV is the default value.

NEW

Compiles MODIFY expressions using the standard FOCUS compilation routines, which use high-precision floating point format for all arithmetic operations.

OLD

Does not compile MODIFY expressions.



x
Reference: Usage Notes for SET MODCOMPUTE

The following are usage notes for SET MODCOMPUTE:


Information Builders