JP2000305751A - 並列ソート装置及び該装置のプログラムを記録した記録媒体 - Google Patents

並列ソート装置及び該装置のプログラムを記録した記録媒体

Info

Publication number
JP2000305751A
JP2000305751A JP11420299A JP11420299A JP2000305751A JP 2000305751 A JP2000305751 A JP 2000305751A JP 11420299 A JP11420299 A JP 11420299A JP 11420299 A JP11420299 A JP 11420299A JP 2000305751 A JP2000305751 A JP 2000305751A
Authority
JP
Japan
Prior art keywords
sort
data
processing
main storage
parallel
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP11420299A
Other languages
English (en)
Other versions
JP3456443B2 (ja
Inventor
Shuji Yamamoto
修二 山本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP11420299A priority Critical patent/JP3456443B2/ja
Publication of JP2000305751A publication Critical patent/JP2000305751A/ja
Application granted granted Critical
Publication of JP3456443B2 publication Critical patent/JP3456443B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)

Abstract

(57)【要約】 【課題】ソートとマージ間でのデータの受け渡しを主記
憶領域上で行うことができ、また、入力ファイルの読み
込み処理中もソート処理の並列実行が可能な並列ソート
装置を提供する。 【解決手段】複数のプロセッサで共有可能な主記憶領域
5と、複数のソート処理スレッド1〜mからなり、各ス
レッドが主記憶領域5内の各ブロック毎にソート処理を
実行するソート処理手段3と、外部記憶装置からソート
対象の入力データ1を入力し、複数のブロックに分割し
て主記憶領域5に記憶するとともに、ソート処理手段3
の複数のスレッドによる主記憶領域5内の各ブロックに
対するソート処理を起動する入力処理スレッドを有する
データ入力処理手段2と、ソート処理が終了した主記憶
領域5内の全ブロックのデータに対してマージ処理を行
って、ソート結果を出力するマージ・データ出力処理手
段6とを備えている。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、ソート処理を分割
して並列に実行する並列ソート装置に関する。
【0002】
【従来の技術】ソート処理では、比較数がデータの組み
合わせ数に比例して増減する。したがって、1スレッド
でデータの入出力やソート処理を行っていた従来のソー
ト処理方式ではファイル内のデータが膨大になると、処
理時間がかかりすぎる問題があった。また、データの入
出力時にはデータのソート処理が行われていないため、
プロセッサが使用されていない状態が発生し、プロセッ
サの機能が有効に活用されない問題もあった。
【0003】
【発明が解決しようとする課題】上記のような問題点を
鑑みて創案されたものとして、並列にソートを行う処理
方式が出てきた。例えば、特開平5−35444号公報
「ソート処理方式」では、図6のようにソート対象ファ
イルを4つに分割し、それぞれを仮想ファイルとする。
次に分割したファイルを4つのソートプログラムで同時
に多重に並列ソートし、さらにソートが行われたデータ
をマージプログラムでマージすることにより全データの
ソートが行われる。この従来技術Aには次のような欠点
がある。
【0004】〔問題点A−1〕この従来技術Aは各ソー
トプログラムによって、各仮想ファイルの読み込みを行
うとともに、ソートを行い、仮想ファイルに書き込む。
次にソート済みの各仮想ファイルのマージを行う。この
時、各ソートプログラムとマージプログラムの受け渡し
は仮想ファイルによって行われるため、仮想ファイルが
外部記憶装置にある場合、主記憶領域と外部記憶装置の
間のデータ転送の時間の遅さによって全体のソートの時
間が遅くなる。また、仮想ファイルへの書き込みがデー
タ入出力用のキャッシュによって遅延書き込みされる場
合においても、キャッシュの空き容量がなくなると書き
込みを行ってキャッシュの空き領域ができるまで待たな
くてはならない。
【0005】本発明は、以上の問題点を解決することを
第1の目的とし、ソートとマージ間でのデータの受け渡
しを主記憶領域上で行うことができる並列ソート装置を
提供する。
【0006】次に特開平7−44356号公報「ソート
処理装置および方法」では次の従来技術Bが記載されて
いる。図7において、使用可能な2台以上のプロセッサ
が存在する場合には、ソート処理プログラムがコピーさ
れて子タスク102が生成され、入力ファイル151の
読み込み処理および作業領域内データのトーナメントツ
リー作成処理が親タスク101に割り当てられ、再トー
ナメント処理および作業ファイル152への書き込み処
理が子タスク102に割り当てられる。親タスク101
および子タスク102は、それぞれ異なる2台のプロセ
ッサによって実行される。メインメモリ13内の作業領
域は、作業領域131と132に2分割され、それらが
親タスク101および子タスク102によって、交互に
使用される。したがって、親タスク101と子タスク1
02の処理が並行して実行され、内部ソート処理を効率
よく並列実行することが可能となる。
【0007】なお、図7において、符号104は、親タ
スク101用のタスク制御ブロックであり、親タスク1
01と作業領域131,132、および入力バッファ1
33、134との結合を図るポインタや、そのタスクの
状態を管理するための種々の制御情報を持つものであ
る。また、符号105は、子タスク102用のタスク制
御ブロックであり、子タスク102と作業領域131,
132、および出力バッファ135,136との結合を
図るポインタや、そのタスクの状態を管理するための制
御情報を持つものである。
【0008】この従来技術Bには次のような欠点があ
る。
【0009】〔問題点B−1〕親タスクでの入力ファイ
ルの読み込み処理において、主記憶領域と外部記憶装置
との間のデータ転送時に外部記憶装置のデータ転送速度
が遅い場合、親タスクに割り当てられたプロセッサはデ
ータ転送が終わるまで、処理をしていない状態になり、
この間は実質2台のプロセッサにおいて並列実行が行わ
れていない。
【0010】本発明では、上記の問題点を解決すること
を第2の目的とし、入力ファイルの読み込み処理中もソ
ート処理の並列実行が可能な並列ソート装置を提供す
る。
【0011】
【課題を解決するための手段】上記課題を解決するた
め、請求項1記載の発明は、複数のプロセッサを有し、
ソート処理を複数に分割して並列に実行し、終了後マー
ジ処理を行ってソート結果を出力する並列ソート装置に
おいて、複数のプロセッサで共有可能な主記憶領域を有
し、該領域にソート対象のデータを複数のブロックに分
割して記憶する主記憶手段と、並列実行可能な複数の処
理単位からなり、各処理単位が主記憶手段内の各データ
ブロック毎にソート処理を実行するソート処理手段と、
外部記憶装置からソート対象のデータを入力し、複数の
ブロックに分割して主記憶手段に記憶するとともに、ソ
ート処理手段の複数の処理単位に対して主記憶手段内の
各データブロック毎にソート処理を行わさせるデータ入
力処理手段と、ソート処理が終了した主記憶手段内の全
ブロックのデータにマージ処理を行って、ソート結果を
出力するマージ・データ出力処理手段とを備えることを
特徴としている。
【0012】また、請求項2記載の発明は、前記データ
入力処理手段が、1つのデータブロックを主記憶手段に
記憶する毎に、該記憶したデータブロックに対してソー
ト処理手段の1つの処理単位によるソート処理を起動す
ることによって、データの入力処理と複数のソート処理
とを並列実行することを特徴としている。また、請求項
3記載の発明は、分割したブロックのソート処理とソー
ト済みのブロックのマージ処理との間のデータの受け渡
しを前記主記憶領域を用いて行うことを特徴としてい
る。
【0013】また、請求項4記載の発明は、請求項1〜
3のいずれか1項に記載の並列ソート装置が、コンピュ
ータシステムとそれによって実行されるプログラムとか
ら実現されるものであって、該プログラムを記録したコ
ンピューター読み取り可能な記録媒体である。
【0014】すなわち、本発明は、ソート処理を複数の
処理単位(タスク、スレッド等)で並列に実行し、終了
後マージを行ってソートの結果を出す並列ソート装置に
おいて、主記憶領域を複数のプロセッサで共有でき、あ
らかじめ、1個以上のソート処理単位(以下、スレッド
とする)を用意し、データを複数のブロックに分けてお
き、データをブロック単位で主記憶領域に読み込み、読
み込んだブロックのソートはソート専用のスレッドで処
理することによって、データの読み込み処理と複数のソ
ート処理を並行に行うことを可能とする。この時、複数
のソート処理スレッドを用意することにより、データ入
力処理時に例えば周辺装置から主記憶領域へのデータ転
送待ちのプロセッサに、ソート処理を割り当てることが
可能になる。また、本発明によれば、ソート処理とマー
ジ処理の間のデータの受け渡しを主記憶領域で行う構成
を得ることができる。
【0015】
【発明の実施の形態】以下、図面を参照して本発明の実
施の形態について説明する。図1は、本発明による並列
ソート装置の構成を説明するためのブロック図である。
図1において、データ処理手段2、ソート処理手段3、
全ソート処理終了待ち手段4、およびマージ・データ出
力処理手段6は、それぞれ、複数のプロセッサを有する
コンピュータシステムにおいて管理・実行されるタスク
に対応する。ソート・マージ用主記憶領域5は、コンピ
ュータシステムの主記憶内で割り当てられた所定の記憶
領域であり、そこにはソート処理およびマージ処理の際
に用いられるデータがブロックに分割されて格納され
る。入力データ1と出力データ7は、そのコンピュータ
システムと、外部記憶装置との間で入出力されるデータ
である。なお、コンピュータシステムの主記憶領域は、
複数のプロセッサで共有でき、この場合、主記憶領域の
サイズは入力データ1のサイズより大きいものとする。
【0016】図1に示すように、本実施の形態では、ま
ず、記憶媒体、例えば外部ディスク装置に存在する入力
データ1をn個(nは自然数)のブロックに分割する。
また、ソート処理手段3内に、同時に起動可能な複数の
スレッドとして構成されるm個のソート処理スレッド1
〜m(mは自然数)を用意する。主記憶内には、図3に
示すように、ソート処理の実行状態を示す実行フラグか
らなるソート実行情報1〜m、当該スレッド処理を実行
可能かどうかを示す同期フラグからなる動作情報1〜
m、ソート・マージ用主記憶領域5内のソート対象のデ
ータブロックの開始位置を示す情報であるデータブロッ
クの開始位置1〜m、データブロックの終了位置を示す
情報であるデータブロックの終了位置1〜mを、各スレ
ッド1〜mごとに格納するソート処理スレッド管理テー
ブルが設定される。
【0017】データ入力処理手段2は、入力処理スレッ
ドからなり、ブロックごとにデータをソート・マージ用
主記憶領域5に格納する。各ブロックのデータがソート
・マージ用主記憶領域5に格納されたら、ソート処理手
段3により、空いているソート処理スレッドでブロック
ごとにソートを行わせる。例えば、データ入力処理手段
2によって入力データ1のブロック1を読み込んで、ソ
ート・マージ用主記憶領域5にデータを格納し、つぎ
に、ソート処理スレッド1を動かし、データ入力処理手
段2は、すぐ、次のブロックであるブロック2を読み込
み始める。データ入力処理手段2では読み込みブロック
がなくなるまで以上の動作を繰り返す。一方、ソート処
理手段3では、各ソート処理スレッド1〜mがデータ入
力処理手段2によって動かされるまで待機中になってい
て、動作状態になると、与えられたブロックのソートを
行い、終了するとまた待機中になる。
【0018】全ソート処理終了待ち手段4ではソート処
理手段3によるソート・マージ用主記憶領域5の各ブロ
ックのソートの終了を待つ。次にマージ・データ出力処
理手段6は、ソート済みの各ブロックデータをマージし
ながら、マージ後のデータを出力データ7として外部の
記憶装置に書き込む。
【0019】以上の構成によって、本実施の形態は、図
1において入力データ1をn個のブロックに分割し、デ
ータ入力処理手段2の入力処理スレッドによってブロッ
クごとに読み込んで、ソート処理手段3の待機中のソー
ト処理スレッドに渡す。待機中のソート処理スレッドは
入力処理スレッドによってソートの開始を起動され、与
えられたブロックのソートが終了すると、また、待機中
の状態になる。全てのブロックのソートが完了するとマ
ージ・データ出力処理手段6によって全ブロックのマー
ジ処理を行いながら出力データ7へ出力し、ソートを完
了する。
【0020】次に、図2、図3、図4、および図5を参
照して図1の実施の形態の動作について詳細に説明す
る。まず、記憶媒体、例えば外部ディスク装置に存在す
るソート対象データをn個のブロックに分割する。ま
た、m個のソート処理スレッド1〜mを用意する。
【0021】データ入力処理手段2による処理について
図4で説明をする。ステップS1において入力データ1
に未入力のブロックがあるかチェックし、あるならば、
ステップS2でソート・マージ用主記憶領域5へ読み込
む。ステップS3では、図3の各ソート処理スレッドを
管理するソート処理スレッド管理テーブルのソート実行
情報により実行中でないソート処理スレッドを検索す
る。もし、全てのソート処理スレッドが実行中であれ
ば、どれか1つが空きになるまで同期待ちを行う。空き
のスレッドが検索できたら(ここでは一例としてソート
処理スレッド1のソート実行情報1が実行中でなかった
とすると)、ステップS4で読み込んだブロックの開始
位置1とブロックの終了位置1の情報をソート処理スレ
ッド管理テーブルにセットする。ステップS5では、ソ
ート管理テーブルのソート実行情報1を実行状態にセッ
トし、動作情報1を動作可能状態にセットする。以上の
ステップS1からステップS5までの処理を未入力のブ
ロックがなくなるまで繰り返し続ける。そして、未入力
のブロックがなくなると全ソート終了待ち手段4へ処理
を移行する。
【0022】次に、ソート処理手段3による処理につい
て図5を参照して説明する。ソート処理手段3ではあら
かじめ、それぞれが図5のように動作するソート処理ス
レッドをm個起動しておく。図5において、例えばソー
ト処理スレッド1の場合、ソート処理スレッド1は、ス
テップS6では最初にソート処理スレッド管理テーブル
の初期化を行い、ステップS7で動作情報1が動作可能
状態になるまで同期待ちを行う。そして、先に説明した
ようにデータ入力処理手段2によってブロックの読み込
みが行われ、ソートの準備が整うと、動作情報1が動作
可能状態にされ、ソート処理スレッド1は、次にステッ
プS8で読み込んだソート処理スレッド管理テーブルの
ブロックの開始位置1とブロックの終了位置1の各情報
に基づいてブロックのソートを行う。このときソート済
みの各ブロックのデータはソート・マージ用主記憶領域
5に格納されている。ソートが終了すると、ステップS
9でソート実行情報1を実行中でない状態にし、動作情
報1を動作できない状態にする。この後、また、ステッ
プS7で動作情報1が動作状態になるのを待ち、ステッ
プS7からステップS9までの処理を繰り返す。
【0023】上記の構成によれば、データ入力処理手段
2とソート処理手段3は、図2のようにデータ入力とソ
ート処理を並列に実行する。なお、図2は、ブロック数
nを4、スレッド数mを3とした場合を一例として示し
たものである。
【0024】全ソート終了待ち手段4では各ソート処理
スレッドのソート処理スレッド管理テーブルのソート実
行情報が全て実行状態でない状態になるまで同期待ちを
行う。そして実行フラグが全てオフになったらマージ・
データ出力処理手段6へ移行する。
【0025】次にマージ・データ出力処理手段6では、
ソート・マージ用主記憶領域5にあるソート済みの各ブ
ロック1〜nをマージし、出力データ7としてデータの
書き込みを行う。
【0026】上述した実施の形態によれば、入力データ
のサイズより主記憶領域のサイズが大きいコンピュータ
システム上において、第一に、図2のようにデータ入力
処理スレッドとソート処理スレッドを並列で実行するた
め、入力処理とソート処理を非同期に実行でき、入力処
理時に外部記憶装置から主記憶領域へのデータ転送待ち
でプロセッサが空き状態なってもソート処理スレッドへ
プロセッサを割り当てることができる。 第2に、図1
のようにソート処理手段3とマージ・データ出力処理手
段6の間のデータの受け渡しはソート・マージ用主記憶
領域5を使用して行うため、外部記憶装置を使用してデ
ータの受け渡しを行う場合と比べて主記憶領域と外部記
憶装置との間のデータ転送の時間を削減できるので高速
にデータの受け渡しを行うことができる。以上の効果に
よってソート処理全体の高速化を図ることができる。
【0027】なお、本発明の実施の形態は、上記のもの
に限定されることなく、例えば、ソート処理を並列実行
するための処理単位を、スレッドではなく、タスクとす
る(すなわちソート処理手段自体を複数設ける)等、図
1の各手段2、3、4、および6をより分割したり、あ
るいは統合したりする等の変更が適宜可能である。ま
た、本発明による並列ソート装置は、コンピュータシス
テムとそれによって実行されるプログラムとによって実
現することができ、そのプログラムはコンピューター読
み取り可能な記録媒体に記録して配布することが可能で
ある。
【0028】
【発明の効果】以上説明したように、本発明のソート装
置によれば、ソートとマージ間でのデータの受け渡しを
主記憶領域上で行うことができ、また、入力ファイルの
読み込み処理中もソート処理の並列実行が可能となるの
で、従来に比べ、ソート処理に要する時間の短縮やリソ
ースの低減を図ることができる。
【図面の簡単な説明】
【図1】 本発明による並列ソート装置を説明するため
のブロック図
【図2】 図1に示す入力処理スレッドとソート処理ス
レッドの動作を示すタイミング図
【図3】 図1の並列ソート装置で用いられるソート処
理スレッド管理テーブルを示す図
【図4】 図1のデータ入力処理手段2の動作を示すフ
ローチャート
【図5】 図1のソート処理手段3内の各ソート処理ス
レッドの動作を示すフローチャート
【図6】 従来のソート装置の一例を示すブロック図
【図7】 従来のソート装置の他の例を示すブロック図
【符号の説明】
1 入力データ 2 データ入力処理手段 3 ソート処理手段 4 全ソート処理終了待ち手段 5 ソート・マージ用主記憶領域 6 マージ・データ出力処理手段 7 出力データ

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】 複数のプロセッサを有し、ソート処理を
    複数に分割して並列に実行し、終了後マージ処理を行っ
    てソート結果を出力する並列ソート装置において、 複数のプロセッサで共有可能な主記憶領域を有し、該領
    域にソート対象のデータを複数のブロックに分割して記
    憶する主記憶手段と、 並列実行可能な複数の処理単位からなり、各処理単位が
    主記憶手段内の各データブロック毎にソート処理を実行
    するソート処理手段と、 外部記憶装置からソート対象のデータを入力し、複数の
    ブロックに分割して主記憶手段に記憶するとともに、ソ
    ート処理手段の複数の処理単位に対して主記憶手段内の
    各データブロック毎にソート処理を行わさせるデータ入
    力処理手段と、 ソート処理が終了した主記憶手段内の全ブロックのデー
    タにマージ処理を行って、ソート結果を出力するマージ
    ・データ出力処理手段とを備えることを特徴とする並列
    ソート装置。
  2. 【請求項2】 前記データ入力処理手段が、1つのデー
    タブロックを主記憶手段に記憶する毎に、該記憶したデ
    ータブロックに対してソート処理手段の1つの処理単位
    によるソート処理を起動し、 データの入力処理と複数のソート処理とを並列に実行す
    ることを特徴とする請求項1記載の並列ソート装置。
  3. 【請求項3】 分割したブロックのソート処理とソート
    済みのブロックのマージ処理との間のデータの受け渡し
    を前記主記憶領域を用いて行うことを特徴とする請求項
    1記載の並列ソート装置。
  4. 【請求項4】 請求項1〜3のいずれか1項に記載の並
    列ソート装置が、コンピュータシステムとそれによって
    実行されるプログラムとから実現されるものであって、
    該プログラムを記録したコンピューター読み取り可能な
    記録媒体。
JP11420299A 1999-04-21 1999-04-21 並列ソート装置及び該装置のプログラムを記録した記録媒体 Expired - Lifetime JP3456443B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11420299A JP3456443B2 (ja) 1999-04-21 1999-04-21 並列ソート装置及び該装置のプログラムを記録した記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11420299A JP3456443B2 (ja) 1999-04-21 1999-04-21 並列ソート装置及び該装置のプログラムを記録した記録媒体

Publications (2)

Publication Number Publication Date
JP2000305751A true JP2000305751A (ja) 2000-11-02
JP3456443B2 JP3456443B2 (ja) 2003-10-14

Family

ID=14631775

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11420299A Expired - Lifetime JP3456443B2 (ja) 1999-04-21 1999-04-21 並列ソート装置及び該装置のプログラムを記録した記録媒体

Country Status (1)

Country Link
JP (1) JP3456443B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006215968A (ja) * 2005-02-07 2006-08-17 Fujitsu Ltd データ処理装置、データ処理方法、データ処理プログラム、および記録媒体
JP2007299216A (ja) * 2006-04-28 2007-11-15 Toshiba Corp 不揮発性フラッシュメモリを用いる記憶装置とその制御方法
JP2016157339A (ja) * 2015-02-25 2016-09-01 富士通株式会社 コンパイラプログラム、コンピュータプログラム及びコンパイラ装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006215968A (ja) * 2005-02-07 2006-08-17 Fujitsu Ltd データ処理装置、データ処理方法、データ処理プログラム、および記録媒体
JP2007299216A (ja) * 2006-04-28 2007-11-15 Toshiba Corp 不揮発性フラッシュメモリを用いる記憶装置とその制御方法
JP2016157339A (ja) * 2015-02-25 2016-09-01 富士通株式会社 コンパイラプログラム、コンピュータプログラム及びコンパイラ装置

Also Published As

Publication number Publication date
JP3456443B2 (ja) 2003-10-14

Similar Documents

Publication Publication Date Title
US7545381B2 (en) Interruptible GPU and method for context saving and restoring
US7526634B1 (en) Counter-based delay of dependent thread group execution
US20090300324A1 (en) Array type processor and data processing system
US10402223B1 (en) Scheduling hardware resources for offloading functions in a heterogeneous computing system
JPH02183362A (ja) コンピュータシステム
US20070180161A1 (en) DMA transfer apparatus
CN106790599A (zh) 一种基于多核无锁环形缓冲区的共生虚拟机通信方法
CN111124641B (zh) 一种利用多线程的数据处理方法及系统
JP3098342B2 (ja) 並列処理装置における処理順序指定方式
CN118642665B (zh) 数据湖无锁写入方法、装置、设备、介质及产品
CN112559403B (zh) 一种处理器及其中的中断控制器
JPS62221732A (ja) 情報処理装置
JPH0340868B2 (ja)
JP3456443B2 (ja) 並列ソート装置及び該装置のプログラムを記録した記録媒体
WO2006123547A1 (ja) 情報処理装置、システム、方法およびプロセッサ
CN119645903A (zh) 一种提高实时图像数据输入处理和输出效率的优化方法
JPH04120652A (ja) 並列処理装置
JP4497445B2 (ja) 単一のプロセッサを使用してのオーバーラップするグラフィックス・データの収集および伝送のための方法、システムおよびコンピュータ・プログラム製品
JP2002014827A (ja) プロセスの制御及び可視化方法
US20240249127A1 (en) Neural network processing
JP2006107004A (ja) トレース制御回路、マイクロプロセッサ及びトレース制御方法
JP3002041B2 (ja) データベース演算処理装置
CN121879993A (zh) 任务处理方法、装置、设备、存储介质及程序产品
CN118378675A (zh) 神经网络处理
CN120455687A (zh) 一种高效视频解码方法、系统、设备及存储介质

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20030701

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20070801

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080801

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080801

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090801

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090801

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100801

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110801

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110801

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120801

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130801

Year of fee payment: 10

EXPY Cancellation because of completion of term