JP4339381B2

Multiprocessor system, and its information processing method

Abstract

This record has no abstract on file.

JP4339381B2, drawing sheet 1
Sheet 1 of 46

Term

Term ended

Expired 22 May 2026, 0.3 years ago.

  1. Priority
  2. Filed
  3. Granted
  4. Expired
  5. Today

16 claims: 13 independent, 3 dependent

  1. 1
    表形式データのレコードのレコード番号が所定のレコード順に従って格納されたレコード番号配列、表形式データのレコードの所定の項目の項目値に対応する項目値番号がレコード番号に関連付けて格納された項目値番号配列、及び、表形式データの項目値が当該項目値に対応する項目値番号の順序に従って格納された項目値配列を記憶する共有メモリと、 前記共有メモリにアクセス可能であるn(n≧1)台のプロセッサと、を具備した共有メモリ型マルチプロセッサシステムにおいて、レコードの所定の項目の項目値に応じてレコード順を並べ換える情報処理方法であって、 前記レコード番号配列をn1(n1≦n)個の部分に分割し、前記分割されたレコード番号配列のn1個の部分を前記n台のプロセッサのうちのn1台のプロセッサにそれぞれ割り当てるステップと、 前記n1台のプロセッサのうちの各プロセッサによって、前記割り当てられたレコード番号配列の部分に含まれるレコード番号に関連付けられた項目値番号の出現回数をカウントするステップと、 前記項目値番号の範囲をn2(n2≦n)個の範囲に分割し、前記分割された項目値番号のn2個の範囲を前記n台のプロセッサのうちのn2台のプロセッサにそれぞれ割り当てるステップと、 前記n2台のプロセッサのうちの各プロセッサによって、前記項目値番号が異なる場合には前記項目値番号の順序に従い、同じ項目値番号の出現回数が2台以上のプロセッサによってカウントされている場合には前記レコード番号配列の部分の順序に従って、前記n1台のプロセッサによってカウントされた前記項目値番号のそれぞれの出現回数を累計数に変換するステップと、 前記n1台のプロセッサのうちの各プロセッサによって、前記割り当てられたレコード番号配列の部分に含まれるレコード番号に関連付けられた前記項目値番号の累計数をポインタとして利用して、前記割り当てられた前記レコード番号配列の部分に含まれるレコード番号をさらなるレコード番号配列に格納するステップと、を含む情報処理方法。
  2. 2
    表形式データのレコードのレコード番号が所定のレコード順に従って格納されたレコード番号配列、表形式データのレコードの所定の項目の項目値に対応する項目値番号がレコード番号に関連付けて格納された項目値番号配列、及び、表形式データの項目値が当該項目値に対応する項目値番号の順序に従って格納された項目値配列を記憶する共有メモリと、 前記共有メモリにアクセス可能であるn(n≧1)台のプロセッサと、を具備した共有メモリ型マルチプロセッサシステムにおいて、レコードの所定の項目の項目値に応じてレコード順を並べ換える情報処理方法であって、 前記項目値番号の範囲に応じて前記項目値番号の基数を設定するステップと、 前記基数で表現された前記項目値番号の最下位桁から最上位桁まで順番に現在の桁に関して、1回目は前記レコード番号配列を現在のレコード番号配列として、2回目以降はさらなるレコード番号配列を現在のレコード番号配列として、ソート処理を繰り返すステップと、を含み、 前記ソート処理が、 前記現在のレコード番号配列をn1(n1≦n)個の部分に分割し、前記分割された現在のレコード番号配列の部分を前記n台のプロセッサのうちのn1台のプロセッサに割り当てるステップと、 前記n1台のプロセッサのうちの各プロセッサによって、前記割り当てられたレコード番号配列の部分に含まれるレコード番号に関連付けられた項目値番号の現在の桁の値の出現回数をカウントするステップと、 前記項目値番号の現在の桁の値の範囲をn2(n2≦n)個の範囲に分割し、前記分割された項目値番号の桁の値のn2個の範囲を前記n台のプロセッサのうちのn2台のプロセッサに割り当てるステップと、 前記n2の複数台のプロセッサのうちの各プロセッサによって、前記項目値番号の現在の桁の値が異なる場合には前記項目値番号の現在の桁の値の順序に従い、前記項目値番号の現在の桁の同じ値が2台以上のプロセッサによってカウントされている場合には前記レコード番号配列の部分の順序に従って、前記n1台のプロセッサによってカウントされた項目値番号の現在の桁の値のそれぞれの出現回数を累計数に変換するステップと、 前記n1台のプロセッサのうちの各プロセッサによって、前記割り当てられたレコード番号配列の部分に含まれるレコード番号に関連付けられた前記項目値番号の現在の桁の値の累計数をポインタとして利用して、前記割り当てられた前記レコード番号配列の部分に含まれるレコード番号をさらなるレコード番号配列に格納するステップと、を含む、情報処理方法。
  3. 3
    表形式データのレコードのレコード番号が所定のレコード順に従って格納されたレコード番号配列、表形式データのレコードの所定の項目の項目値に対応する項目値番号がレコード番号に関連付けて格納された項目値番号配列、及び、表形式データの項目値が当該項目値に対応する項目値番号の順序に従って格納された項目値配列を記憶する共有メモリと、 前記共有メモリにアクセス可能である複数台のプロセッサと、を具備した共有メモリ型マルチプロセッサシステムにおいて、レコードの所定の項目の項目値に応じてレコード順を並べ換える情報処理方法であって、 前記項目値番号の範囲に応じて前記項目値番号の基数を設定するステップと、 前記基数で表現された前記項目値番号の最下位桁から最上位桁まで順番に現在の桁に関して、1回目は前記レコード番号配列を現在のレコード番号配列として、2回目以降はさらなるレコード番号配列を現在のレコード番号配列として、ソート処理を繰り返すステップと、を含み、 前記ソート処理が、 前記現在のレコード番号配列を分割し、前記分割された現在のレコード番号配列の部分を前記複数台のプロセッサに割り当てるステップと、 各プロセッサによって、前記割り当てられたレコード番号配列の部分に含まれるレコード番号に関連付けられた項目値番号の現在の桁の値の出現回数をカウントするステップと、 少なくとも1台のプロセッサによって、前記項目値番号の現在の桁の値が異なる場合には前記項目値番号の現在の桁の値の順序に従い、前記項目値番号の現在の桁の同じ値が2台以上のプロセッサによってカウントされている場合には前記レコード番号配列の部分の順序に従って、前記割り当てられた項目値番号の現在の桁の値のそれぞれの出現回数を累計数に変換するステップと、 前記各プロセッサによって、前記割り当てられたレコード番号配列の部分に含まれるレコード番号に関連付けられた前記項目値番号の現在の桁の値の累計数をポインタとして利用して、前記割り当てられた前記レコード番号配列の部分に含まれるレコード番号をさらなるレコード番号配列に格納するステップと、を含む、情報処理方法。
  4. 4
    表形式データのレコードのレコード番号が所定のレコード順に従って格納されたレコード番号配列、表形式データのレコードの所定の項目の項目値に対応する項目値番号がレコード番号に関連付けて格納された項目値番号配列、及び、表形式データの項目値が当該項目値に対応する項目値番号の順序に従って格納された項目値配列を記憶する共有メモリと、 前記共有メモリにアクセス可能であるn(n≧1)台のプロセッサと、を具備した共有メモリ型マルチプロセッサシステムにおいて、レコードの所定の項目の項目値に応じてレコード順を並べ換える情報処理方法であって、 前記レコード番号配列をn1(n1≦n)個の部分に分割し、前記分割されたレコード番号配列のn1個の部分を前記n台のプロセッサのうちのn1台のプロセッサに割り当てるステップと、 前記n1台のプロセッサのうちの各プロセッサによって、前記割り当てられたレコード番号配列の部分に含まれるレコード番号に関連付けられた項目値番号の出現回数をカウントするステップと、 前記項目値番号の範囲をn2(n2≦n)個の範囲に分割し、前記分割された項目値番号のn2個の範囲を前記n台のプロセッサのうちのn2台のプロセッサに割り当てるステップと、 前記n2台のプロセッサのうちの各プロセッサによって、前記n2台のプロセッサに割り当てられた項目値番号に関して、(i)前記n1台のプロセッサのうちの各プロセッサによってカウントされた前記出現回数の和を算出し、算出された和を前記項目値番号の範囲の順番に前記n2台のプロセッサ間で伝搬させ、(ii)前記項目値番号が異なる場合には前記項目値番号の順序に従い、同じ項目値番号の出現回数が2台以上のプロセッサによってカウントされている場合には前記レコード番号配列の部分の順番に従って、前記出現回数を累計数に変換し、前記伝搬させられた和を前記累計数に加算することにより、前記n1台のプロセッサのうちの各プロセッサに割り当てられたレコード番号配列の部分に含まれるレコード番号に関連付けられた項目値番号毎に前記出現回数を累計数に変換するステップと、 前記n1台のプロセッサのうちの各プロセッサによって、前記割り当てられたレコード番号配列の部分に含まれるレコード番号に関連付けられた前記項目値番号毎に得られた前記累計数をポインタとして利用して、前記割り当てられた前記レコード番号配列の部分に含まれるレコード番号をさらなるレコード番号配列に格納するステップと、を含む、情報処理方法。
  5. 5
    表形式データのレコードのレコード番号が所定のレコード順に従って格納されたレコード番号配列、表形式データのレコードの所定の項目の項目値に対応する項目値番号がレコード番号に関連付けて格納された項目値番号配列、及び、表形式データの項目値が当該項目値に対応する項目値番号の順序に従って格納された項目値配列を記憶する共有メモリと、 前記共有メモリにアクセス可能であるn(n≧1)台のプロセッサと、を具備した共有メモリ型マルチプロセッサシステムにおいて、レコードの所定の項目の項目値に応じてレコード順を並べ換える情報処理方法であって、 少なくとも1台のプロセッサによって、前記項目値番号の範囲に応じて前記項目値番号の基数を設定することにより、前記項目値番号を上位の桁の下位の桁に分けるステップと、 少なくとも1台のプロセッサによって、前記レコード番号配列に含まれるレコード番号に関連付けられた前記項目値番号の上位の桁の値の出現回数をカウントし、前記項目値番号の上位の桁の値の順序に従って前記出現回数を累計数に変換し、前記項目値番号の上位の桁の値の累計数をポインタとして利用して前記レコード番号配列中のレコード番号を並べ換え、前記項目値番号の上位の桁の値の順序に従ってn1(≦n)個に区分された中間的なレコード番号配列を生成するステップと、 少なくとも1台のプロセッサによって、前記中間的なレコード番号配列のn1個の区分をそれぞれ前記n台のプロセッサのうちのn1台のプロセッサに割り当てるステップと、 前記区分ごとに割り当てられた各プロセッサによって、前記中間的なレコード番号配列のうちの前記割り当てられた区分内のレコード番号に関連付けられた前記項目値番号の下位の桁の値の出現回数をカウントし、前記項目値番号の下位の桁の値の順序に従って前記出現回数を累計数に変換し、前記項目値番号の下位の桁の値の累計数をポインタとして利用して前記中間的なレコード番号配列のうちの前記割り当てられた区分内のレコード番号をその関連付けられた前記項目値番号の下位の桁の値の順序に並べ換えるステップと、を含む、情報処理方法。
  6. 6
    共有メモリと前記共有メモリにアクセス可能であるn(n≧1)台のプロセッサとを具備した共有メモリ型マルチプロセッサシステムであって、 前記共有メモリが、表形式データのレコードのレコード番号が所定のレコード順に従って格納されたレコード番号配列、表形式データのレコードの所定の項目の項目値に対応する項目値番号がレコード番号に関連付けて格納された項目値番号配列、及び、表形式データの項目値が当該項目値に対応する項目値番号の順序に従って格納された項目値配列を記憶し、 各プロセッサが、 n1(n1≦n)個の部分に分割された前記レコード番号配列のうち各プロセッサによって受け持たれる部分を決める手段と、 前記レコード番号配列の部分に含まれるレコード番号に関連付けられた項目値番号の出現回数をカウントする手段と、 n2(n2≦n)個の範囲に分割された前記項目値番号の範囲のうち各プロセッサによって受け持たれる範囲を決める手段と、 前記項目値番号が異なる場合には前記項目値番号の順序に従い、同じ項目値番号の出現回数が2台以上のプロセッサによってカウントされている場合には前記レコード番号配列の部分の順序に従って、各プロセッサによって受け持たれる範囲内の項目値番号のそれぞれの出現回数を累計数に変換する手段と、 前記レコード番号配列の部分に含まれるレコード番号に関連付けられた前記項目値番号の累計数をポインタとして利用して、前記レコード番号配列の部分に含まれるレコード番号をさらなるレコード番号配列に格納する手段と、を含む、共有メモリ型マルチプロセッサシステム。
  7. 7
    前記項目値番号の範囲のうち先行する範囲を受け持つプロセッサの前記出現回数を累計数に変換する手段によって得られた前記累計数が、直後の範囲を受け持つプロセッサの前記出現回数を累計数に変換する手段によって参照される、請求項6に記載の共有メモリ型マルチプロセッサシステム。
  8. 8
    共有メモリと前記共有メモリにアクセス可能である複数台のプロセッサとを具備した共有メモリ型マルチプロセッサシステムであって、 前記共有メモリが、表形式データのレコードのレコード番号が所定のレコード順に従って格納されたレコード番号配列、表形式データのレコードの所定の項目の項目値に対応する項目値番号がレコード番号に関連付けて格納された項目値番号配列、及び、表形式データの項目値が当該項目値に対応する項目値番号の順序に従って格納された項目値配列を記憶し、 各プロセッサが、 前記項目値番号の範囲に応じて前記項目値番号の基数を設定する手段と、 前記基数で表現された前記項目値番号の最下位桁から最上位桁まで順番に現在の桁を設定し、1回目は前記レコード番号配列を現在のレコード番号配列として、2回目以降はさらなるレコード番号配列を現在のレコード番号配列として設定し、ソート処理を繰り返す手段と、を含み、 前記ソート処理を繰り返す手段が、 前記レコード番号配列のうち各プロセッサによって受け持たれる部分を決める手段と、 前記レコード番号配列の部分に含まれるレコード番号に関連付けられた項目値番号の現在の桁の値の出現回数をカウントする手段と、 前記項目値番号の現在の桁の値の範囲のうち各プロセッサによって受け持たれる範囲を決める手段と、 前記項目値番号の現在の桁の値が異なる場合に前記項目値番号の現在の桁の値の順序に従い、前記項目値番号の現在の桁の同じ値が2台以上のプロセッサによってカウントされている場合には前記レコード番号配列の部分の順序に従って、各プロセッサによって受け持たれる範囲内の項目値番号の現在の桁の値のそれぞれの出現回数を累計数に変換する手段と、 前記レコード番号配列の部分に含まれるレコード番号に関連付けられた前記項目値番号の現在の桁の値の累計数をポインタとして利用して、前記レコード番号配列の部分に含まれるレコード番号をさらなるレコード番号配列に格納する手段と、を含む、共有メモリ型マルチプロセッサシステム。
  9. 9
    前記項目値番号の現在の桁の範囲のうち先行する範囲を受け持つプロセッサの前記出現回数を累計数に変換する手段によって得られた前記累計数が、直後の範囲を受け持つプロセッサの前記出現回数を累計数に変換する手段によって参照される、請求項8に記載の共有メモリ型マルチプロセッサシステム。
  10. 10
    共有メモリと前記共有メモリにアクセス可能である複数台のプロセッサとを具備した共有メモリ型マルチプロセッサシステムであって、 前記共有メモリが、表形式データのレコードのレコード番号が所定のレコード順に従って格納されたレコード番号配列、表形式データのレコードの所定の項目の項目値に対応する項目値番号がレコード番号に関連付けて格納された項目値番号配列、及び、表形式データの項目値が当該項目値に対応する項目値番号の順序に従って格納された項目値配列を記憶し、 各プロセッサが、 前記項目値番号の範囲に応じて前記項目値番号の基数を設定する手段と、 前記基数で表現された前記項目値番号の最下位桁から最上位桁まで順番に現在の桁を設定し、1回目は前記レコード番号配列を現在のレコード番号配列として、2回目以降はさらなるレコード番号配列を現在のレコード番号配列として設定し、ソート処理を繰り返す手段と、を含み、 前記ソート処理を繰り返す手段が、 前記レコード番号配列のうち各プロセンサによって受け持たれる部分を決める手段と、 前記レコード番号配列の部分に含まれるレコード番号に関連付けられた項目値番号の現在の桁の値の出現回数をカウントする手段と、を含み、 少なくとも1台のプロセッサの前記ソート処理を繰り返す手段が、前記項目値番号の現在の桁の値が異なる場合には前記項目値番号の現在の桁の値の順序に従い、前記項目値番号の現在の桁の同じ値が2台以上のプロセッサによってカウントされている場合には前記レコード番号配列の部分の順序に従って、前記項目値番号の現在の桁の値のそれぞれの出現回数を累計数に変換する手段を含み、 前記ソート処理を繰り返す手段が、前記レコード番号配列の部分に含まれるレコード番号に関連付けられた前記項目値番号の現在の桁の値の累計数をポインタとして利用して、前記レコード番号配列の部分に含まれるレコード番号をさらなるレコード番号配列に格納する手段をさらに含む、共有メモリ型マルチプロセッサシステム。
  11. 11
    表形式データのレコードのレコード番号が所定のレコード順に従って格納されたレコード番号配列、表形式データのレコードの所定の項目の項目値に対応する項目値番号がレコード番号に関連付けて格納された項目値番号配列、及び、表形式データの項目値が当該項目値に対応する項目値番号の順序に従って格納された項目値配列を記憶する共有メモリと、 前記共有メモリにアクセス可能であるn(n≧1)台のプロセッサと、を具備した共有メモリ型マルチプロセッサシステムにおいて、 各プロセッサに、 n1(n1≦n)個の部分に分割された前記レコード番号配列のうち各プロセッサによって受け持たれる部分を決める機能と、 前記レコード番号配列の部分に含まれるレコード番号に関連付けられた項目値番号の出現回数をカウントする機能と、 n2(n2≦n)個の範囲に分割された前記項目値番号の範囲のうち各プロセッサによって受け持たれる範囲を決める機能と、 前記項目値番号が異なる場合には前記項目値番号の順序に従い、同じ項目値番号の出現回数が2台以上のプロセッサによってカウントされている場合には前記レコード番号配列の部分の順序に従って、各プロセッサによって受け持たれる範囲内の項目値番号のそれぞれの出現回数を累計数に変換する機能と、 前記レコード番号配列の部分に含まれるレコード番号に関連付けられた前記項目値番号の累計数をポインタとして利用して、前記レコード番号配列の部分に含まれるレコード番号をさらなるレコード番号配列に格納する機能と、を実現させるためのプログラム。
  12. 12
    表形式データのレコードのレコード番号が所定のレコード順に従って格納されたレコード番号配列、表形式データのレコードの所定の項目の項目値に対応する項目値番号がレコード番号に関連付けて格納された項目値番号配列、及び、表形式データの項目値が当該項目値に対応する項目値番号の順序に従って格納された項目値配列を記憶する共有メモリと、 前記共有メモリにアクセス可能である複数台のプロセッサと、を具備した共有メモリ型マルチプロセッサシステムにおいて、 各プロセッサに、 前記項目値番号の範囲に応じて前記項目値番号の基数を設定する機能と、 前記基数で表現された前記項目値番号の最下位桁から最上位桁まで順番に現在の桁を設定し、1回目は前記レコード番号配列を現在のレコード番号配列として、2回目以降はさらなるレコード番号配列を現在のレコード番号配列として設定し、前記現在の桁のソート処理を制御する機能と、 前記レコード番号配列のうち各プロセッサによって受け持たれる部分を決める機能と、 前記レコード番号配列の部分に含まれるレコード番号に関連付けられた項目値番号の現在の桁の値の出現回数をカウントする機能と、 前記項目値番号の現在の桁の値の範囲のうち各プロセッサによって受け持たれる範囲を決める機能と、 前記項目値番号の現在の桁の値が異なる場合に前記項目値番号の現在の桁の値の順序に従い、前記項目値番号の現在の桁の同じ値が2台以上のプロセッサによってカウントされている場合には前記レコード番号配列の部分の順序に従って、各プロセッサによって受け持たれる範囲内の項目値番号の現在の桁の値のそれぞれの出現回数を累計数に変換する機能と、 前記レコード番号配列の部分に含まれるレコード番号に関連付けられた前記項目値番号の現在の桁の値の累計数をポインタとして利用して、前記レコード番号配列の部分に含まれるレコード番号をさらなるレコード番号配列に格納する機能と、を実現させるためのプログラム。
  13. 13
    表形式データのレコードのレコード番号が所定のレコード順に従って格納されたレコード番号配列、表形式データのレコードの所定の項目の項目値に対応する項目値番号がレコード番号に関連付けて格納された項目値番号配列、及び、表形式データの項目値が当該項目値に対応する項目値番号の順序に従って格納された項目値配列を記憶する共有メモリと、 前記共有メモリにアクセス可能である複数台のプロセッサと、を具備した共有メモリ型マルチプロセッサシステムにおいて、 各プロセッサに、 前記項目値番号の範囲に応じて前記項目値番号の基数を設定する機能と、 前記基数で表現された前記項目値番号の最下位桁から最上位桁まで順番に現在の桁を設定し、1回目は前記レコード番号配列を現在のレコード番号配列として、2回目以降はさらなるレコード番号配列を現在のレコード番号配列として設定し、前記現在の桁のソート処理を制御する機能と、 前記レコード番号配列のうち各プロセッサによって受け持たれる部分を決める機能と、 前記レコード番号配列の部分に含まれるレコード番号に関連付けられた項目値番号の現在の桁の値の出現回数をカウントする機能と、を実現させ、 少なくとも1台のプロセッサに、前記項目値番号の現在の桁の値が異なる場合には前記項目値番号の現在の桁の値の順序に従い、前記項目値番号の現在の桁の同じ値が2台以上のプロセッサによってカウントされている場合には前記レコード番号配列の部分の順序に従って、前記項目値番号の現在の桁の値のそれぞれの出現回数を累計数に変換する機能を実現させ、 前記各プロセッサに、前記レコード番号配列の部分に含まれるレコード番号に関連付けられた前記項目値番号の現在の桁の値の累計数をポインタとして利用して、前記レコード番号配列の部分に含まれるレコード番号をさらなるレコード番号配列に格納する機能をさらに実現させるためのプログラム。
  14. 14
    表形式データのレコードのレコード番号が所定のレコード順に従って格納されたレコード番号配列、表形式データのレコードの所定の項目の項目値に対応する項目値番号がレコード番号に関連付けて格納された項目値番号配列、及び、表形式データの項目値が当該項目値に対応する項目値番号の順序に従って格納された項目値配列を記憶する共有メモリと、 前記共有メモリにアクセス可能であるn(n≧1)台のプロセッサと、を具備した共有メモリ型マルチプロセッサシステムにおいて、 n1(n1≦n)個の部分に分割された前記レコード番号配列の部分が割り当てられた前記n台のプロセッサのうちのn1台のプロセッサのそれぞれに、前記割り当てられたレコード番号配列の部分に含まれるレコード番号に関連付けられた項目値番号の出現回数をカウントする機能を実現させ、 n2(n2≦n)個の範囲に分割された前記項目値番号の範囲が割り当てられた前記n台のプロセッサのうちのn2台のプロセッサのそれぞれに、前記n2台のプロセッサに割り当てられた項目値番号に関して、(i)前記n1台のプロセッサのうちの各プロセッサによってカウントされた前記出現回数の和を算出し、算出された和を前記項目値番号の範囲の順番に前記n2台のプロセッサ間で伝搬させ、(ii)前記項目値番号が異なる場合には前記項目値番号の順序に従い、同じ項目値番号の出現回数が2台以上のプロセッサによってカウントされている場合には前記レコード番号配列の部分の順番に従って、前記出現回数を累計数に変換し、前記伝搬させられた和を前記累計数に加算することにより、前記n1台のプロセッサのうちの各プロセッサに割り当てられたレコード番号配列の部分に含まれるレコード番号に関連付けられた項目値番号毎に前記出現回数を累計数に変換する機能を実現させ、 前記n1台のプロセッサのうちの各プロセッサに、前記割り当てられたレコード番号配列の部分に含まれるレコード番号に関連付けられた前記項目値番号毎に得られた前記累計数をポインタとして利用して、前記割り当てられた前記レコード番号配列の部分に含まれるレコード番号をさらなるレコード番号配列に格納する機能を実現させるためのプログラム。
  15. 15
    表形式データのレコードのレコード番号が所定のレコード順に従って格納されたレコード番号配列、表形式データのレコードの所定の項目の項目値に対応する項目値番号がレコード番号に関連付けて格納された項目値番号配列、及び、表形式データの項目値が当該項目値に対応する項目値番号の順序に従って格納された項目値配列を記憶する共有メモリと、 前記共有メモリにアクセス可能であるn(n≧1)台のプロセッサと、を具備した共有メモリ型マルチプロセッサシステムにおいて、 少なくとも1台のプロセッサに、 前記項目値番号の範囲に応じて前記項目値番号の基数を設定することにより、前記項目値番号を上位の桁と下位の桁に分ける機能と、 前記レコード番号配列に含まれるレコード番号に関連付けられた前記項目値番号の上位の桁の値の出現回数をカウントし、前記項目値番号の上位の桁の値の順序に従って前記出現回数を累計数に変換し、前記項目値番号の上位の桁の値の累計数をポインタとして利用して前記レコード番号配列中のレコード番号を並べ換え、前記項目値番号の上位の桁の値の順序に従ってn1(≦n)に区分された中間的なレコード番号配列を生成する機能と、を実現させ、 前記中間的なレコード番号配列の区分ごとに割り当てられた各プロセッサに、前記中間的なレコード番号配列のうちの前記割り当てられた区分内のレコード番号に関連付けられた前記項目値番号の下位の桁の値の出現回数をカウントし、前記項目値番号の下位の桁の値の順序に従って前記出現回数を累計数に変換し、前記項目値番号の下位の桁の値の累計数をポインタとして利用して前記中間的なレコード番号配列のうちの前記割り当てられた区分内のレコード番号をその関連付けられた前記項目値番号の下位の桁の値の順序に並べ換える機能を実現させるためのプログラム。
  16. 16
    請求項11乃至15のうちいずれか1項に記載のプログラムを記録したコンピュータ読み取り可能な記憶媒体。
Independent claims16