Hitachi

OpenTP1 Version 7 分散トランザクション処理機能 TP1/Server Base Enterprise Option 使用の手引


3.9.1 メモリプールの作成単位

COBOL用メモリ管理機能を使用する場合,COBOL用メモリ領域のメモリプールの作成単位を,TP1/EEのプロセス単位に1プールとするか,処理スレッド単位に1プールとするかをメモリ関連定義で選択できます。どちらを選択するかは,システムに求められる性能要件とマシンに搭載できるメモリ容量によって判断してください。

〈この項の構成〉

(1) プロセス単位にメモリプールを作成する場合

COBOL用メモリ領域のメモリプールを,TP1/EEのプロセスに一つずつ作成します。各処理スレッドからのメモリ割り当て要求に対して,同一のメモリプールからメモリを割り当てます。

プロセス単位にメモリプールを作成する場合,作成するメモリプールのサイズをメモリ関連定義のmemory_cobol_area_sizeオペランドで指定します。

プロセス単位にメモリプールを作成すると,同一プロセス内のすべての処理スレッドでメモリプールを共有するため,TP1/EE内でのメモリ利用効率を向上できます。ただし,各処理スレッドからのメモリ割り当て・解放の処理に排他制御を伴うため,処理スレッドのメモリ割り当て・解放要求が競合した場合に同時実行性が低下するおそれがあります。

(2) 処理スレッド単位にメモリプールを作成する場合

COBOL用メモリ領域のメモリプールを,TP1/EEの処理スレッドに一つずつ作成します。各処理スレッドからのメモリ割り当て要求に対して,処理スレッド専用のメモリプールからメモリを割り当てます。

処理スレッド単位にメモリプールを作成する場合,作成するメモリプールのサイズをメモリ関連定義のmemory_cobol_area_thd_sizeオペランドで指定します。

処理スレッド単位にメモリプールを作成すると,ほかのスレッドの処理に影響されません。このため,複数の処理スレッドで同時にメモリ割り当て・解放要求が発生した場合に,処理性能を向上できます。ただし,各処理スレッドに専用のメモリプールを作成するため,メモリの利用効率が低下するおそれがあります。