CN105159867B - 用于在网格计算环境中运算的情景状态处理系统和方法 - Google Patents

用于在网格计算环境中运算的情景状态处理系统和方法 Download PDF

Info

Publication number
CN105159867B
CN105159867B CN201510387679.9A CN201510387679A CN105159867B CN 105159867 B CN105159867 B CN 105159867B CN 201510387679 A CN201510387679 A CN 201510387679A CN 105159867 B CN105159867 B CN 105159867B
Authority
CN
China
Prior art keywords
node
coordinator
matrix
assets
data
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.)
Active
Application number
CN201510387679.9A
Other languages
English (en)
Other versions
CN105159867A (zh
Inventor
詹姆斯·霍华德·古德纳特
史蒂夫·克鲁格
奥利弗·沙本伯格
克里斯多佛·D·贝利
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.)
SAS Institute Inc
Original Assignee
SAS Institute Inc
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 SAS Institute Inc filed Critical SAS Institute Inc
Publication of CN105159867A publication Critical patent/CN105159867A/zh
Application granted granted Critical
Publication of CN105159867B publication Critical patent/CN105159867B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0635Risk analysis of enterprise or organisation activities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5072Grid computing

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Resources & Organizations (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Strategic Management (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Economics (AREA)
  • Data Mining & Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Computational Mathematics (AREA)
  • Development Economics (AREA)
  • Game Theory and Decision Science (AREA)
  • Quality & Reliability (AREA)
  • General Business, Economics & Management (AREA)
  • Operations Research (AREA)
  • Tourism & Hospitality (AREA)
  • Marketing (AREA)
  • Educational Administration (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Computing Systems (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Multi Processors (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

本申请涉及用于在网格计算环境中运算的情景状态处理系统和方法。提供使用网格计算环境来生成一个或多个情景的多个计算机状态推测的系统和方法。中央协调器软件组件在根数据处理器上执行以向多个节点协调器软件组件提供命令和数据。一种节点协调器软件组件管理线程,所述线程在其相关联的节点数据处理器上执行且其执行一组矩阵运算。随机模拟使用矩阵运算的结果来生成多个状态推测。可由网格计算环境基于所述生成的状态推测来执行额外处理,例如形成用于用户的风险信息。

Description

用于在网格计算环境中运算的情景状态处理系统和方法
本申请为发明名称为“用于在网格计算环境中运算的情景状态处理系统和方法”的原中国发明专利申请的分案申请。原申请的中国申请号为201180018683.8;原申请的申请日为2011年2月11号,其国际申请号为PCT/US2011/024540。
技术领域
本文所述的技术大体而言涉及分布式数据处理,且更具体而言涉及使用分布式数据处理的情景分析。
背景技术
由于个人计算机的性能得到极大的提高及其使用的普及,使处理能力分布到网络上的所有计算机成为可能。分布式计算是和集中式计算相对立的概念,分布式计算的数据可以分布在很大区域。分布式网络中,数据的存储和处理都是在本地工作站上进行的。数据输出可以打印,也可保存在软盘上。通过网络主要是得到更快、更便捷的数据访问。因为每台计算机都能够存储和处理数据,所以不要求服务器功能十分强大,其价格也就不必过于昂贵。这种类型的网络可以适应用户的各种需要,同时允许他们共享网络的数据、资源和服务。在分布式网络中使用的计算机既能够作为独立的系统使用,也可以把它们连接在一起得到更强的网络功能。
发明内容
根据本文所提供的教导内容,提供用来生成一个或多个情景的多个系统状态推测的系统和方法。举例而言,中央协调器软件组件在根数据处理器上执行以向多个节点协调器软件组件提供命令和数据。多个节点协调器软件中的每一个与单独的节点数据处理器相关联且在单独的节点数据处理器上执行。节点数据处理器具有易失性计算机存储器,易失性计算机存储器由节点协调器软件组件访问且由在节点数据处理器上执行的线程访问。点协调器软件组件管理线程,线程在其相关联的节点数据处理器上执行且其关于联立线性方程式执行一组矩阵运算。随机模拟使用矩阵运算的结果来生成多个状态推测。线程在其相关联的节点数据处理器上执行且其基于状态推测和由用户计算机所提供的情景信息来进行情景评估的一部分,从而生成情景评估结果。节点数据处理器的易失性计算机存储器保存在节点数据处理器处执行的情景评估的结果。
中央协调器软件组件被配置成从用户计算机接收特别问题且通过聚集和连结节点数据处理器中每一个所提供的情景评估结果来提供对特别问题的响应。
中央协调器软件组件通过指导节点协调器软件组件访问并处理存储于其相关联的节点数据处理器中的易失性存储器中的情景评估结果来处理来自用户计算机的特别问题。
作为一额外示例,一种系统可用于对于至少部分地由系数矩阵(A)所限定的情景生成多个系统状态推测,其中节点协调器软件组件中的每一个被配置为:管理线程,线程在其相关联的节点数据处理器上执行且其对于系数矩阵(A)进行一组矩阵运算,其中随机模拟使用矩阵运算的结果来生成多个状态推测;以及管理线程,线程在其相关联的节点数据处理器上执行且其基于状态推测和由用户计算机所提供的情景信息来进行情景评估的一部分,从而生成情景评估结果;其中节点数据处理器的易失性计算机存储器保存在节点数据处理器处执行的情景评估的结果。中央协调器软件组件被配置成从用户计算机接收特别问题且通过聚集和连结节点数据处理器中每一个所提供的情景评估结果来提供对特别问题的响应,其中中央协调器软件组件通过指导节点协调器软件组件访问并处理存储于其相关联的节点数据处理器中的易失性存储器中的情景评估结果来处理来自用户计算机的特别问题。
作为另一示例,中央协调器软件组件包括用于在根数据处理器上执行且用于向节点协调器软件组件提供命令的一组指令。矩阵(A)为对称矩阵,在根上执行的中央协调器软件组件连结在节点数据处理器处执行的情景评估的结果,并且/或者,根数据处理器包括用于生成一系列随机数的随机数生成器;其中中央协调器软件组件将生成的系列随机数分配到节点协调器软件组件以用于生成多个状态推测。执行随机模拟包括基于风险因素的历史生成状态推测。
作为另一示例,中央协调器软件组件向第一节点协调器软件组件提供第一行数据;其中第一节点协调器软件组件向第二节点协调器发送第一行数据且然后第一节点协调器软件组件处理第一行数据以用于矩阵运算;第一行数据的处理包括第一节点协调器软件组件指导其线程以读取第一行数据使得述线程能构造矩阵(A)的上三角形部分;其中其它节点协调器软件组件指导其相应线程读取由另一节点协调器软件组件提供的一行数据使得线程能构造矩阵(A)的上三角形部分的其相应部分。
作为另一示例,由用户计算机提供的情景信息包括头寸。中央协调器软件组件通过指导节点协调器软件组件访问并处理存储于其相关联的节点数据处理器中的易失性存储器中的状态推测运算结果来处理来自用户计算机的特别问题,并且/或者,节点数据处理器的易失性计算机存储器被重新格式化以可以用于状态生成运算的情景评估中重新使用同一易失性计算机存储器。
作为另一示例,一种系统可用于对于至少部分地由系数矩阵(A)所限定的情景生成多个系统状态推测,其中多个节点协调器软件中每一个与单独的节点数据处理器相关联且可以在单独的节点数据处理器上执行,每个节点数据处理器具有易失性计算机存储器,易失性计算机存储器由节点协调器软件组件访问且由在节点数据处理器上执行的线程访问,其中节点协调器软件组件中每一个被配置成通过中央协调器软件组件向第一节点协调器软件组件提供第一行数据来生成多个状态推测,第一节点协调器软件组件向第二节点协调器发送第一行数据且然后第一节点协调器软件组件处理第一行数据以用于矩阵运算;第一行数据的处理包括第一节点协调器软件组件指导其线程以读取第一行数据使得线程能构造矩阵(A)的上三角形部分;其中其它节点协调器软件组件指导其相应线程读取由另一节点协调器软件组件提供的一行数据使得线程能构造矩阵(A)的上三角形部分的其相应部分;以及随机模拟基于矩阵(A)的上三角形部分的所构造的部分来执行以生成多个状态推测来由节点协调器来储存。在其相关联的节点数据处理器上执行的线程基于状态推测且基于由用户计算机所提供的情景信息来进行情景评估,从而生成情景评估结果;其中优选地节点数据处理器的易失性计算机存储器保存在节点数据处理器处执行的情景评估的结果;尤其是中央协调器软件组件被配置成从用户计算机接收特别问题且通过聚集和连结节点数据处理器中每一个所提供的情景评估结果来提供对特别问题的响应;其中中央协调器软件组件通过指导节点协调器软件组件访问并处理存储于其相关联的节点数据处理器中的易失性存储器中的情景评估结果来处理来自用户计算机的特别问题。在根上执行的中央协调器软件组件连结在节点数据处理器处执行的情景评估的结果其中中央协调器软件组件通过指导节点协调器软件组件访问并处理存储于其相关联的节点数据处理器中的易失性存储器中的状态推测运算结果来处理来自用户计算机的特别问题,或者其中节点数据处理器的易失性计算机存储器被重新格式化以在用于状态生成运算的情景评估中重新使用同一易失性计算机存储器。
作为另一示例,中央协调器软件组件包括用于在根数据处理器上执行且用于向节点协调器软件组件提供命令的一组指令,其中矩阵(A)为对称矩阵,并且/或者,根数据处理器包括用于生成一系列随机数的随机数生成器;其中中央协调器软件组件将生成的系列随机数分配到节点协调器软件组件以用于生成多个状态推测。执行随机模拟包括基于风险因素的历史生成状态推测。
作为另一示例,一种系统可用于使用多个系统状态推测来进行情景分析,其中节点协调器软件组件中的每一个被配置为:管理线程,线程在其相关联的节点数据处理器上执行且其基于状态推测和由用户计算机所提供的情景信息来进行情景评估的一部分,从而生成情景评估结果;其中,为了生成情景评估结果,线程向多个头寸应用不同于任何其它线程的系统状态推测子集,其中头寸表示在系统状态推测的不同情景下要评估的条目的属性;节点数据处理器的易失性计算机存储器保存在节点数据处理器处执行的情景评估的结果;中央协调器软件组件被配置成从用户计算机接收特别问题且通过聚集和连结节点数据处理器中每一个所提供的情景评估结果来提供对特别问题的响应,其中中央协调器软件组件通过指导节点协调器软件组件访问并处理存储于其相关联的节点数据处理器中的易失性存储器中的情景评估结果来处理来自用户计算机的特别问题。中央协调器软件组件包括用于在根数据处理器上执行且用于向节点协调器软件组件提供命令的一组指令。在根上执行的中央协调器软件组件连结在节点数据处理器处执行的情景评估的结果。中央协调器软件组件通过向第一节点协调器软件组件提供第一头寸来在节点数据处理器之中分配头寸数据;其中第一节点协调器软件组件向第一节点协调器发送第一头寸且然后第一接线协调器软件组件关于第一节点协调器软件组件负责的状态推测来处理第一头寸。
作为一额外示例,条目包括投资工具;其中条目的属性包括在不同状态推测下要评估的头寸信息;其中头寸由用户计算机提供。中央协调器软件组件还通过指导节点协调器软件组件访问存储于其相关联的节点数据处理器的易失性存储器中的头寸处理结果来处理自用户计算机的特别问题。
作为另一示例,一种系统可用于将矩阵(A)因式分为预定的规范形式,其中多个节点协调器软件中的每一个与单独的节点数据处理器相关联且在单独的节点数据处理器上执行,以及每个节点数据处理器具有易失性计算机存储器,易失性计算机存储器由节点协调器软件组件访问且由在节点数据处理器上执行的线程访问。节点协调器软件组件中每一个可被配置成通过中央协调器软件组件向第一节点协调器软件组件提供自矩阵(A)的第一行数据来生成矩阵(A)的因子分解的部分,第一节点协调器软件组件向第二节点协调器发送第一行数据且然后第一节点协调器软件组件处理第一行数据;第一行数据的处理包括第一节点协调器软件组件指导其线程以读取第一行数据使得线程能构造矩阵(A)的三角形部分;以及其它节点协调器软件组件指导其相应线程读取由另一节点协调器软件组件所提供的数据行使得线程能构造矩阵(A)的三角形部分的其相应部分,从而生成矩阵(A)的因子分解。矩阵(A)的因子分解包括矩阵(A)的Cholesky分解或节点协调器软件组件被配置成基于矩阵(A)的三角形部分的构造部分来执行随机模拟,特别地随机模拟的执行生成多个状态推测,其中根数据处理器包括用于生成一系列随机数的随机数生成器;其中中央协调器软件组件将所生成的系列随机数分配到节点协调器软件组件以用于生成多个状态推测。执行随机模拟包括基于风险因素的历史生成状态推测。在其相关联的节点数据处理器上执行的线程基于状态推测且基于由用户计算机所提供的情景信息来进行情景评估,从而生成情景评估结果;其中优选地节点数据处理器的易失性计算机存储器保存在节点数据处理器处执行的情景评估的结果;其中尤其是中央协调器软件组件被配置成从用户计算机接收特别问题且通过聚集和连结节点数据处理器中每一个所提供的情景评估结果来提供对特别问题的响应;其中中央协调器软件组件通过指导节点协调器软件组件访问并处理存储于其相关联的节点数据处理器中的易失性存储器中的情景评估结果来处理来自用户计算机的特别问题。在根上执行的中央协调器软件组件连结在节点数据处理器处执行的情景评估的结果中央协调器软件组件包括用于在根数据处理器上执行且用于向节点协调器软件组件提供命令的一组指令,并且/或者,矩阵(A)为对称矩阵。
作为另一示例,一种系统可用于对于预先规定的极端状态推测执行压力测试,其中多个节点协调器软件中每一个与单独的节点数据处理器相关联且在单独的节点数据处理器上执行,每个节点数据处理器具有易失性计算机存储器,易失性计算机存储器由节点协调器软件组件访问且由在节点数据处理器上执行的线程访问。节点协调器软件组件中的每一个被配置为:管理线程,线程在其相关联的节点数据处理器上执行且其基于极端述状态推测和基于由用户计算机所提供的信息来进行头寸评估,从而生成头寸评估结果;其中在节点数据处理器上执行的线程中的每一个处理极端状态推测但处理不同头寸;节点数据处理器的易失性计算机存储器保存在节点数据处理器处执行的头寸评估的结果;中央协调器软件组件被配置成从用户计算机接收特别问题且通过聚集和连结节点数据处理器中每一个所提供的头寸评估结果来提供对特别问题的响应;其中中央协调器软件组件通过指导节点协调器软件组件访问并处理存储于其相关联的节点数据处理器中的易失性存储器中的头寸评估结果来处理来自用户计算机的特别问题。
作为额外示例,一种节点数据处理器包括多核心处理器。多核心处理器在单个物理封装中执行多个处理。多核心处理器包括双核心处理器,其中每个节点协调器软件组件与双核心处理器相关联用于管理在相关联的双核心处理器上的线程执行;其中线程在相关联的双核心处理器的核心处理器上执行。中央协调器软件组件包括用于在根数据处理器上执行且用于向节点协调器软件组件提供命令的一组指令。在根上执行的中央协调器软件组件连结在节点数据处理器处执行的头寸评估的结果其中头寸由用户计算机提供。中央协调器软件组件还通过指导节点协调器软件组件访问存储于其相关联的节点数据处理器的易失性存储器中的头寸处理结果来处理自用户计算机的特别问题。
作为另一示例,一种用于具有多个数据处理器的网格计算机系统可以包括用于生成至少部分地由系数矩阵(A)限定的情景的多个系统状态推测可包括在根数据处理器上执行中央协调器软件组件用于向多个节点协调器软件组件提供命令和数据;在单独的节点数据处理器上执行多个节点协调器软件组件,每个节点数据处理器具有易失性计算机存储器,易失性计算机存储器由节点协调器软件组件访问且由在节点数据处理器上执行的线程访问,节点协调器软件组件中的每一个:管理线程,线程在其相关联的节点数据处理器上执行且其对于系数矩阵(A)进行一组矩阵运算,其中随机模拟使用矩阵运算的结果来生成多个状态推测;以及管理线程,线程在其相关联的节点数据处理器上执行且其基于状态推测和由用户计算机所提供的情景信息来进行情景评估的一部分,从而生成情景评估结果;节点数据处理器的易失性计算机存储器保存在节点数据处理器处执行的情景评估的结果;中央协调器软件组件从用户计算机接收特别问题且通过聚集和连结节点数据处理器中每一个所提供的情景评估结果来提供对特别问题的响应;其中中央协调器软件组件通过指导节点协调器软件组件访问并处理存储于其相关联的节点数据处理器中的易失性存储器中的情景评估结果来处理来自用户计算机的特别问题。
作为另一示例,一种在具有多个数据处理器的网格计算系统上执行的方法可包括使用在根数据处理器上执行的中央协调器软件组件来向多个节点协调器软件提供命令和数据,其中多个节点协调器软件中每一个与单独的节点数据处理器相关联且在单独的节点数据处理器上执行,每个节点数据处理器具有易失性计算机存储器,易失性计算机存储器由节点协调器软件组件访问且由在节点数据处理器上执行的线程访问。
作为另一示例,一种使用具有多个数据处理器对于至少部分地由系数矩阵(A)所限定的情景生成多个系统状态推测的方法,包括使用在根数据处理器上执行的中央协调器软件组件来向多个节点协调器软件提供命令和数据,其中多个节点协调器软件中每一个与单独的节点数据处理器相关联且在单独的节点数据处理器上执行,每个节点数据处理器具有易失性计算机存储器,易失性计算机存储器由节点协调器软件组件访问且由在节点数据处理器上执行的线程访问。节点协调器软件组件用于管理线程,线程在其相关联的节点数据处理器上执行且其对于系数矩阵(A)进行一组矩阵运算,其中随机模拟使用矩阵运算的结果来生成多个状态推测;以及管理线程,线程在其相关联的节点数据处理器上执行且其基于状态推测和由用户计算机所提供的情景信息来进行情景评估的一部分,从而生成情景评估结果;其中节点数据处理器的易失性计算机存储器保存在节点数据处理器处执行的情景评估的结果,其中中央协调器软件组件被配置成从用户计算机接收特别问题且通过聚集和连结节点数据处理器中每一个所提供的情景评估结果来提供对特别问题的响应;其中中央协调器软件组件通过指导节点协调器软件组件访问并处理存储于其相关联的节点数据处理器中的易失性存储器中的情景评估结果来处理来自用户计算机的特别问题。
附图说明
图1为描绘其中用户可与网格计算环境互动的环境的框图。
图2和图3为描绘了用于网格计算环境的硬件和软件组件的框图。
图4为描绘了被配置用于执行情景状态处理的网格计算环境的过程流程的过程流程图。
图5为示出了使用中央协调器和节点协调器生成系统状态推测的运算集的过程流程图。
图6为描绘了在函数上针对于使用系统状态推测来生成情景分析结果的过程流程图。
图7为描绘了在函数上针对于聚集来自节点协调器的结果且使用结果来对于特别用户查询做出响应的过程流程图。
图8为描绘了使用网格计算环境的市场状态生成和风险定价应用的过程流程图。
图9为描绘了被收集对于每个营业日的风险因数收集两个营业年度的信息的表。
图10描绘了用于生成市场状态推测的额外输入数据。
图11为描绘了用于生成市场状态推测的矩阵运算和随机模拟的过程流程图。
图12为描绘了中央协调器向节点协调器分配风险因素历史数据的过程流程图。
图13为示出了波数据分配技术的过程流程图。
图14和图15描绘了X'X矩阵的存储的示例。
图16为描绘了在函数上针对于执行行调整(row adjustment)以便构造L’矩阵的过程流程图。
图17为描绘了波技术的过程流程图。
图18为描绘了在提供L’矩阵的情况下的节点协调器的过程流程图。
图19和图20为描绘了在函数上针对于生成随机向量并向节点协调器分配随机向量的过程流程图。
图21为描绘了在函数上针对于基于L’矩阵来计算市场状态推测的过程流程图。
图22为描绘了节点协调器生成市场状态推测的总请求的子集的过程流程图。
图23描绘了市场状态推测结果的示例。
图24为描绘了节点处理器使用市场状态推测来生成头寸定价结果的过程流程图。
图25描绘了输入头寸数据。
图26为描绘了生成不同头寸定价结果的线程的过程流程图。
图27为描绘了用于向节点分配由用户提供的头寸的机制的过程流程图。
图28为描绘了在节点协调器之中分配第一头寸的过程流程图。
图29至图31为描绘了由节点使用的定价函数的过程流程图。
图32描绘了头寸定价结果的示例。
图33和图34描绘了节点协调器存储定价结果的示例。
图35为描绘了在多个步骤中自节点协调器的信息保持在存储器中,因为需要这些信息来向用户提供不同水平的答案。
图36为描绘了在函数上针对于聚集来自节点协调器的结果且使用结果来对于特别用户查询做出响应的过程流程图。
图37为描绘由中央协调器用于聚集结果和报告目的的价格头寸阵列的过程流程图。
图38为描绘了在节点协调器处执行以便向用户计算机提供查询结果的分类变量处理的过程流程图。
图39至图40为描绘了涉及网格计算环境的多用户计算机环境的方框图。
图41和图42描绘了用于市场压力测试目的的示例。
具体实施方式
图1在30描绘了网格计算环境,网格计算环境用于处理许多不同类型的应用(诸如需要大量计算机处理循环的科学、技术或商务应用)的大量数据。用户计算机32可通过多种方式,诸如通过一个或多个网络34与网格计算环境30互动。
一个或多个数据存贮器36能储存待由网格计算环境30分析的数据以及由网格计算环境生成的任何中间或最终数据。但是,在某些实施例中,网格计算环境30的配置允许执行其运算使得中间和最终数据结果能单独地存储于易失性存储器(例如RAM)中而无需将中间或最终数据结果存储于非易失型存储器(例如盘)中。
这可在许多情形下适用,诸如当网格计算机环境30从用户接收特别查询时和当通过处理大量数据所生成的响应需要即时生成时。在此非限制性情况下,网格计算环境30被配置成在网格存储器内保持处理的信息使得能对于用户在不同的详细水平做出响应以及允许用户互动地查询此信息。
除了处置这样的大量问题的网格计算环境30之外,网格计算环境30可被配置成允许用户提出多个特别问题且在不同的粒度水平。例如,用户可询问在石油业中特定股票组可能具有的相对风险敞口(exposure)是什么。为了对于来自用户的这类询问做出响应,网格计算环境30将所有石油业价格信息聚集在一起且做出在未来在石油界中可能存在的敞口的判定。在查看这样的结果时,用户可希望获悉哪个具体石油公司股票造成最大风险量。无需OLAP或数据库环境,网格计算环境30聚集所有石油公司价格信息且做出在未来在石油界中可能存在的公司层面风险敞口的判定。此外,由于在所有用户查询中保持了基本数据结果,网格计算环境30可提供其它相关的条目。例如,除了用户涉及Chevron和Exxon股票的早期查询之外,用户现在希望添加Sun oil到投资组合以查看其影响如何。作为响应,网格计算环境30添加已经生成且保存在存储器中的Sun oil以及其它公司的头寸定价信息。作为另一示例,用户能在随后的查询中规定他们想要减少Exxon股票数量且分析该头寸。
图2和图3示出了用于网格计算环境30的硬件和软件组件。参看图2,网格计算环境30包括中央协调器软件组件100,该中央协调器软件组件100在根数据处理器102上运算。网格计算环境30的中央协调器100与用户计算机104和与节点协调器软件组件(106,108)通信,节点协调器软件组件(106,108)在包含于网格计算环境30中的其自己的单独数据处理器(110,112)上执行。
作为实施环境的一示例,网格计算环境30可包括刀片服务器(blade server),且中央协调器100和节点协调器(106,108)与其自己的刀片服务器相关联。换言之,中央协调器100和节点协调器(106,108)在其自己的相应服务器上执行。在此示例中,每个刀片服务器包含多个核心,且如图3所示,线程(例如,线程200、202、204、206)与属于节点处理器(例如,节点处理器110)的核心(例如,核心210、212、214、216)相关联且在属于节点处理器的核心上执行。网络将每个刀片服务器连接在一起。
中央协调器100包括在网格上的节点。例如,可存在100个节点,其中仅50个节点被规定作为节点协调器来运行。网格计算环境30将中央协调器100作为第51节点来运行,且从该网格内随机地选择中央协调器节点。因此,中央协调器100具有与节点协调器相同的硬件配置。
如图3所示,中央协调器100接收信息且向用户提供关于用户向网格提交的查询的信息。中央协调器100也负责与50个节点协调器节点通信,诸如通过向它们发送关于做什么的指令以及接收并处理来自节点协调器的信息。在一实施方式中,中央协调器100为关于该网格的客户端的中心联络点,且用户从不与节点协调器中的任一个直接通信。
关于涉及中央协调器100的数据传输,中央协调器100与客户端(或另一源)通信以获得待处理的输入数据。中央协调器100分割输入数据且发送输入数据的正确部分以按路线发送到节点协调器。中央协调器100还可生成由节点协调器在模拟运算中使用的随机数以及聚集来自节点协调器的任何处理结果。中央协调器100管理节点协调器,且每个节点协调器管理在其相应机器上执行的线程。
节点协调器为其所相关联的线程分派存储器。相关联的线程为与节点协调器在相同物理刀片协调器中的那些线程。但应了解,可使用其它配置,诸如处于相同刀片服务器中的多个节点协调器来管理在服务器上运算的不同线程。类似于管理并控制在刀片服务器内的运算的节点协调器,中央协调器100管理并控制在机箱内的运算。
如图3所示,节点处理器包括用于节点协调器和其线程的共享存储器(例如,共享存储器220)。网格计算环境30被结构化以进行其运算(例如,矩阵运算等)使得在刀片服务器内进行尽可能多的数据传输(例如,经由在其节点上的共享存储器在线程之间),与在不同刀片上运算的线程之间执行数据传输相比。这样的经由共享存储器的数据传输比涉及与另一刀片服务器连接的数据传输更加高效。
图4描绘了网格计算环境的过程流程,网格计算环境被配置成执行诸如股票投资组合的风险定价的情景状态处理。网格计算环境的中央协调器和节点调节器被配置成在输入数据以推测系统状态时高效地执行矩阵分解过程(例如,矩阵的因子分解)。在300使用矩阵因子分解来执行随机模拟来生成系统状态推测。系统状态推测用于在302在节点协调器处生成情景分析信息。然后在304由中央协调器来聚集在节点协调器处生成的情景分析信息且用于对于用户查询做出响应。
图5示出了使用中央协调器和节点协调器来生成系统状态推测的运算集合。在图5的示例中,网格计算环境的中央协调器和节点协调器被配置成处理输入数据400来执行叉乘矩阵(X'X矩阵)。为了形成X'X矩阵,中央协调器在402拆分且分配历史数据到节点协调器使得输入数据400的矩阵分解(X'X)能在节点协调器处执行。
还通过在404对存储体节点协调器的数据的X'X行执行节点协调器调整来处理X'X矩阵。这种处理得到根,诸如Cholesky根(L’矩阵)。为了生成系统状态推测412,在410在节点协调器处基于在406分配到节点协调器的所生成的L’矩阵和基于在408分配到节点协调器的随机数的向量来执行随机模拟。在计算系统状态推测之后,每个节点协调器将具有大致等量的系统状态推测,其中每个系统包含对于自输入数据的所有因素的值。
图6描绘了针对于使用系统状态推测412来生成情景分析结果506的函数。作为到情景分析生成函数302的输入数据,用户提供执行情景分析的情景条件。例如,用于金融情景分析的情景条件可包括用于待评估的不同股票的头寸信息。
由用户提供的情景条件信息由中央协调器接收且在500由中央协调器分配给节点协调器。每个节点协调器指导其线程在502调用情景分析函数用于在节点上存在的系统状态推测。当完成这点时,每个节点协调器具有用于其所负责的系统状态推测的情景分析结果,如在504所示。
图7描绘了针对于聚集自节点协调器的结果且使用结果来在606对于在600所接收的特别用户查询做出响应的函数。中央协调器从每个节点协调器接收个别情景分析结果506。中央协调器在602在回答自用户查询的一定水平来聚集个别情景分析结果。中央协调器也可在604对聚集的数据执行额外数学运算(例如,描述性统计运算)以由用户查阅。
图8描绘了使用网格计算系统的市场状态生成和风险定价应用。风险定价应用考虑历史如何在股票、贷款、债券等未来损失的风险方面影响到个人。例如,如果个人拥有Chevron和Exxon股票,那么网格计算环境调查与这些股票相关的风险因素的历史信息。风险因素为描述所考虑的系统的经济状态的变量的集合。每个风险因数具有不同的属性和行为且为经济环境的独特贡献者。在分析Chevron和Exxon股票的示例中,风险因素可包括油价、货币汇率、失业率等。
网格计算环境调查这些风险因素的历史来确定其如何影响股票价格。网格计算环境然后通过在700生成所有风险因素的市场状态推测702来从风险因素历史数据向前推测(例如,经由随机模型)。例如,在此领域中的市场状态推测可调查在过几年中油价和货币如何变化,且然后使用历史风险因素数据来执行随机模拟以推测它们在未来可能表现如何(例如,在下一年)。
作为说明,网格计算环境被提供风险因素几年的历史信息。如图9的示例中在800所示,对于每个营业日对于风险因素收集两个营业年度信息,其累计达500天信息。从这条信息,网格计算环境生成每个风险因素的市场状态推测。例如,用于油价的市场状态推测可指示油价在下一年将在$50-$90之间变化。另一市场状态推测可调查美元将在该期间如何变化。市场状态推测用于检测市场可能表现的不同方式。
对于这些市场状态(例如,油价在下一年平均为$75,且美元对欧元将为$1.39且失业率将为10%)中的每一个,网格计算环境调查调查某人的200份Exxon股票将值多少且同样,某人的300份Chevron股票将值多少。网格计算环境将市场状态推测中每一个放在未来且生成不同股票头寸的价格。
为了实现相对较高的置信水平,调查大量风险因素。作为说明,在图9中的风险因素数量为40000。此外,网格计算环境可希望生成数万市场状态推测,这是由于对于相对较高置信水平的需要。
参看图9,除了输入到网格计算环境内的风险因素历史数据之外,提供营业日的数量(“n”)和影响股票价格(“p”)的外部风险因素的数量。作为说明,要收集外部风险因素的历史数据的营业日(“n”)为500营业日(即,收集两个营业年度的数据);以及,且外部风险因素(“p”)的数量为40000个变量(例如,汇率、失业率、消费者信心等)。这形成“n”乘以“p”矩阵且被称作“X”矩阵。矩阵的大小表示要处理的问题的量级。
此输入数据集可由用户通过网络提供且仅存储在易失性存储器中,从而(若需要)帮助减轻安全性问题。但应了解其它情况下可允许输入数据集存储且提供于非易失性介质上。
对于仅涉及相对少量风险因素的风险定价应用,使用常规方案的处理时间是可接受的。但是,一旦问题变得非常大,例如网格计算系统跟踪数万风险因素(例如,40000风险因素),处理时间能接近数天。除了大量风险因素之外,问题进一步加剧,因为为了得到所需置信水平,网格计算系统也可生成数千市场状态推测(例如,10000或更多的市场状态推测)。这仅造成进一步增加处理这样大的数据集所需的总处理时间量,而使用常规方案的某些运行持续多达5至7天。
作为该问题相对更本质的另一迹象,用户提供百万头寸来评估也不鲜见。由于价格头寸的此数量和网格计算环境生成10000市场状态推测,这将导致110亿条目要处理。如本文所公开的网格计算环境可被配置成高效处理这样的大规模问题。
图10在900描绘了用于生成市场状态推测的额外输入数据。为了确定如何来分派节点协调器要处理数据的哪些部分,在根处理器上的中央协调器仅接收与风险因素输入数据相关联的尺寸和数据本身,以及将用于网格计算环境内的配置。这种类型的信息可包括节点协调器的数量和每个节点协调器的线程数量。例如,节点协调器的数量可为20且每个节点协调器的数量可为4。
返回参看图8,市场状态推测702形成用于调查Chevron股票和Exxon股票在未来如何表现的基础且允许用户(例如,风险管理者)更好地了解一组股票的敞口会是什么,诸如从给定股票组过去一年的表现,个人是否具有二十分之一的机会失去特定量金钱。对于每个风险因素,未来的市场状态推测702为该风险因素的所有不同情景的平均。市场状态推测可被视作曲线,其表示风险因素随着时间将如何变化。
为了生成用于风险因素的这些曲线,网格计算环境使用随机模拟技术。随机模拟技术不同于使用风险因素的预报来理解风险的方法。例如,预报模型可能将不会预测在2009年失业率升高到10%且超过,因为几年前,其更低。相比而言,随机模型可模拟在2009年失业率到达10%且超过的情形。
在700生成了市场状态推测之后,下一步骤涉及在704对这些头寸中的每个头寸定价。从用户接收持有的股票、债券或贷款(例如,头寸)列表。定价函数使用这条信息以及所生成的市场状态推测来生成这些头寸中每一个在不同市场状态推测702下的价格706。
在生成了价格706之后,下一步骤是在708继续自用户的任何查询。由于网格计算环境在网格上保持定价信息,能即时生成响应。换言之,网格计算环境无需预先知道将要问什么。先前的方案预先集合数据直到提出用户问题的水平(例如,业界水平信息),从而失去更多详细定价信息(例如,具体公司是水平信息)。在本文所公开的网格计算环境中,网格计算环境保持更低水平的信息存在于存储器中,且并不聚集信息直到网格计算环境从用户接收查询。此外,在网格外的定价信息不同于其中数据写入到中央盘位置的先前方案。中央盘位置方案构成在该过程中作为瓶颈操作的单个点。
图11至图38描绘了一种运算情景,其用于说明在图9和图10中示出的输入数据的处理。图11描绘了用于生成市场状态推测的矩阵运算和随机模拟。这些运算包括:
●分配风险因素历史数据且构建X'X矩阵(在步骤1000)。
●执行行调整来创建L’矩阵(在步骤1002)。
●在节点协调器之中分配L’矩阵(在步骤1004)。
●在节点协调器之中分配随机向量(在步骤1006)。
●计算市场状态推测(在步骤1008)。
总之,这些运算形成叉乘矩阵(X'X矩阵)且然后将采用前向Doolittle技术(或其它等效方案)以获得Cholesky根(L’矩阵)。然后使用Cholesky根来执行随机模拟以生成市场状态推测。
图12针对于中央协调器在100向节点协调器分配风险因素历史数据110来在1104构建X'X矩阵。中央协调器从客户端接收输入数据且将该信息拆分以将其继续传递到节点协调器。网格计算环境如图所示在1102使用波技术来分配和处理数据。图13提供了波数据分配技术1102的图示,其中中央协调器100将第一行发送到第一节点协调器106。第一节点协调器106发送该行到第二节点协调器108且然后第一节点协调器106在1200处理该行。第二节点协调器108从第一节点协调器106接收该行,将其发送到第三节点协调器,且然后在1202处理该行,以此类推。由节点协调器进行的行处理涉及指导其线程1204读取该行,且每个线程构建其所负责的上三角形矩阵的一部分。只要第一节点协调器106完成对第一行的处理,其能从中央协调器100接收第二行。第二行继续以类似于传输第一行的波状方式继续传递到随后的节点协调器。可存在同时向下行进经过节点协调器的许多行的波。当由节点协调器接收和处理了所有行时,X'X矩阵将如图所示在1104形成且存储于节点协调器上的上三角形式中。
作为使用图9的数据的示例,网格计算环境以X矩阵开始,其为“n”דp”,如图9所示。从此数据集,“p”乘“p”矩阵(例如,40000乘40000矩阵)由网格计算环境生成且被称作X'X矩阵。在确定了矩阵之后,然后取得Cholesky根。这通过在节点协调器的线程之中分配40000x 40000矩阵来进行。每行发送到中央协调器且然后中央协调器使用上文所述的波数据分配和处理技术将其转出到节点协调器。每个节点协调器被提供每一行,但每个节点协调器仅创建总矩阵的一部分。
因此,网格以X矩阵的行开始,且所计算的X'X矩阵将为“p”乘“p”。因为矩阵是对称的,仅存储该矩阵的上或下三角形部分。在此示例中,存储上三角形部分。
由节点协调器进行的行处理涉及指导其线程1204读取该行,且每个线程构建其所负责的上三角形矩阵的一部分。在图14中的1300示出X'X矩阵作为块存储。第一块将由节点协调器1来保持,第二块将由节点协调器2来保持等。在每个节点协调器内,每个块还在节点协调器的线程之中分割。作为图示,图15在1400示出了与节点1的线程(即,线程1-4)相关联的行存储于节点1的共享存储器中。
每个节点协调器基于存在多少其它节点和每个节点存在多少线程(即,图10中的“n”和“p”)来知道三角形的哪部分为其负责构造。中央协调器向节点协调器指示其编号为多少,且这足以使得节点协调器知道其要处理矩阵的哪部分以及如何将其部分分为用于与该节点协调器相关联的线程数量的块。节点协调器要处理的该部分的大小与任何其它节点协调器近似相同。
例如,中央协调器可向20个节点协调器指示可存在80个总线程将在40000x 40000大小矩阵上工作。基于这条信息,每个节点协调器(例如,节点协调器1-20)知道其将要对矩阵的哪部分工作。然后中央协调器发出自n×p输入矩阵的一行到节点协调器。如图15所示,节点协调器2认识到由于其为第二节点协调器,其要处理行300至675。
图16描绘了针对于在1002执行行调整以构造L’矩阵1506的函数。当执行行调整1504时,使用波技术1502将上三角形矩阵1500的每一行发送到每个节点协调器,波技术1502帮助分配输入数据且构建上文所述的X'X矩阵。完成这个过程导致L’矩阵1506形成。
图16的波技术进一步在图17中示出。参看图17,在接收到一行时,每个节点协调器指导其线程来对大于所传输的行的所有行执行行调整。更具体而言,第一节点协调器106取得一行且将其发送到第二节点协调器108,且然后第一节点协调器106指导其线程1600来处理该行。第二节点协调器108将该行发送到第三节点协调器且然后第二节点协调器108对其进行处理。
当节点协调器完成处理时,其能开始处理的下一迭代。这甚至能在节点协调器并未完成其处理第一迭代的情况下发生。例如,如果节点协调器3完成了其第一迭代的处理,那么节点协调器3能开始第二迭代的处理(即,在第二波期间提供的数据),即使随后的节点协调器并未完成其第一迭代的处理。
为了使用波技术来形成L’矩阵,节点协调器基于X'X矩阵来执行Cholesky分解。为此,网格计算环境使用前向Doolittle方案。用于形成Cholesky分解的前向Doolittle方案导致对称矩阵分解为上三角形矩阵或下三角形矩阵的乘积和其转置。前向Doolittle方案在J.H.Goodnight,A Tutorial On The Sweep Operator,The American Statistician,vol.33,no.3(Aug.1979),pp.149-158中进一步讨论。(此文献以引用的方式结合到本文中用于所有目的)
前向Doolittle方案基本上执行高斯消去法而无需制作该矩阵的拷贝。换言之,网格计算单元在该网格计算环境通过该矩阵时(即,在该网格计算环境一次一行来扫掠该矩阵时)构造L’矩阵。在节点协调器对其工作时,它们创建逆矩阵。因此,整个矩阵的存储并非必需的且能在适当位置进行,从而显著地降低了存储器要求。
例如,Doolittle方案允许网格计算环境在一行开始且调整其下方的所有行节点协调器且网格计算环境无需返回。例如,如果网格计算环境在第三行,那么网格计算环境从不需要回到矩阵的第一行和第二行。而如果其为完全扫掠,那么网格将必须回到先前的行以便对于当前行做出适当调整。这允许该网格发出由另一节点运算的行且当节点协调器接收该行以对该行工作时,节点协调器已经具有对该行的该部分进行调整所需的一切了。因此,网格计算环境能仅通过该矩阵两次以形成L’矩阵来高效地这样做。此外,每个节点协调器被给予大约相同的工作量。这在节点协调器用太长时间完成其任务的情况下防止出现瓶颈。
在所有节点协调器的线程完成了行调整之后,将对于所有行调整X'X矩阵且X'X矩阵现为在节点协调器之中分配的L’矩阵。
为了完成市场状态推测计算,节点协调器被提供整个L’矩阵,如在图18中在1700处所示。为了实现这个目的,每个节点协调器1702将L’矩阵的其部分发送到其它节点协调器。另一方面是使得节点协调器向中央协调器直接报告其部分使得中央协调器能集合所有节点协调器的结果且然后将整个矩阵分配到所有节点协调器。在这个处理结束时,每个节点协调器具有L’矩阵的完全拷贝。
虽然也可使用其它方案(例如,另一方案使用所分配的L’来生成市场状态推测),使用向节点协调器提供整个L’矩阵的方案是因为所生成的L’矩阵包含为零的有效数字。因此,形成L’的子集,其在此示例中为分配到节点协调器的500x 40000矩阵。此外,具有L’矩阵的每个节点协调器的优点在于可更快速地计算随后的市场状态推测,因为这避免了节点协调器在计算市场状态时必须取回额外行信息的要求。因为每个节点协调器不再仅存储L’矩阵的其部分,进行节点协调器的存储器的重新配置以从存储仅L’矩阵的节点协调器的具体部分转变为存储500x 4000矩阵的整个L’矩阵。
图19描绘了针对于在1006生成随机向量1802且向节点协调器1804分配随机向量1802的函数。如图20所示,随机向量1802由节点协调器用于执行市场状态模拟。若需要,中央协调器100通过使用种子值1900和随机数生成器1902而生成所有随机数1802且向每个节点协调器1804发送所生成的随机数1802的一部分(例如,向量)。
作为备选,网格计算环境可使得每个节点协调器个别地生成其模拟运算所需的随机数。但是,此备选方案可表现出某些缺点。例如,通常使用种子来生成随机数。如果每个节点协调器始于可预测的种子,那么可能在节点协调器之中出现随机数的确定性集合(例如,可再现的顺序)。例如,如果根种子对于第一节点协调器为1,第二节点协调器为2且以此类推,那么,所得到的节点协调器的随机数可变得为确定性的,这是因为节点协调器的种子的连续且渐增的值。
由于中央协调器生成且分配由节点协调器使用的随机数,确保了由节点协调器利用的随机数并不改变最终结果,无论结果由两个节点协调器生成还是由二十个节点协调器生成。在此方案中,中央协调器使用单个种子来生成将由节点协调器使用的所有随机数且将在节点协调器之中分配随机数。
网格计算环境可被配置成使得当节点协调器构造L’矩阵时,中央协调器构造随机数的向量以随后由节点协调器用于生成市场状态推测。
图21描绘了在1008针对基于L’矩阵2002和随机模拟2004来计算市场状态推测的函数。更具体而言,随机向量200乘以L’矩阵2002以在2006产生市场状态推测。在每个节点协调器下,由线程来执行该工作。在计算市场状态推测之后,每个节点协调器将具有大致等量的系统状态推测,其中每个系统包含用于自输入数据的所有因素的值。
更具体而言,通过计算UL矩阵来确定市场状态推测,其中U为随机数的向量。对于K个不同的随机向量,重复计算K次,其中由用户来选择K(例如,K等于10000)。K的值10000导致大小为40000的10000个向量,每个向量用于生成市场状态推测。此外,通过向UL’加上基本条件(base case)来计算市场状态推测。(可需要大量市场状态推测来实现相对高度的置信度。)
关于基本条件,由节点协调器生成的市场状态推测从基本条件生成,基本条件在此示例中包括风险因素的当前值。例如,在油价风险因素的情况下,基本条件可为油价的当前值。
图22描绘了在2100,关于节点协调器,每个节点协调器生成市场状态推测的总请求的子集。例如,如果将要生成10000个市场状态推测且存在100个节点协调器,那么每个节点协调器将对于风险因素中的每一个生成100个市场状态推测。每个节点协调器知道其需要计算什么市场状态,因为每个节点协调器知道其处于节点协调器链中的何处。更具体而言,节点协调器使用在节点协调器数量中的节点数量来标识其需要计算的市场状态推测。这也决定向量中的多少随机数要发送到节点协调器以计算其市场状态推测的那一部分。作为说明,网格计算环境取得样品总数且除以节点协调器数量且然后看余数(extra)多少,在处置该余数数据条目所需的许多节点协调器之中尽可能相等地分割该余数。这能帮助保证每个节点协调器做出与其它协调器近似相同量的市场状态推测。在此情况下,节点协调器的差异至多为一个额外市场状态推测。
图23描绘了在2200市场状态推测结果的示例。结果表明网格计算环境对于40000风险因素中的每一个计算了10000个市场状态推测。
图24描绘了节点处理器2300使用市场状态推测来通过函数2306生成头寸定价结果2302,头寸定价结果2302存储于其相应共享存储器中。作为到情景分析生成函数的输入数据,用户提供头寸信息,在该头寸信息的情况下进行分析。例如,用于金融情景分析的头寸可包括用于不同股票、债券或贷款的头寸值。如在图25中在2400所示,待分析的头寸的数量可相当大(例如,1000000)。其它情况可达到1000000,000待分析的头寸。
为了帮助加快头寸的处理,节点的每个线程被指派要解决的问题的特定部分。作为说明,图26描绘了在2500线程1-4生成不同的头寸定价结果2502以存储于节点1的共享存储器2504中。可运算的情景可包括节点1的线程1被指派用于市场推测的特定子集以计算所有头寸的价格,节点2的线程1被分配用于市场推测的不同子集以计算所有头寸的价格等。
图27示出了在2600用于将用户提供的头寸分配给节点的机构。类似于上文所述的波技术,中央协调器向节点协调器1发送头寸信息,节点协调器1然后向节点协调器2发送头寸信息,然后,节点协调器2向节点协调器3发送头寸信息等。每个节点协调器指导其线程调用与节点协调器相关联的用于市场状态推测的定价函数。在节点协调器接收了头寸且然后将其继续发送到下一节点协调器之后,节点协调器基于其具有哪种市场状态推测而生成定价。
在图28中,第一头寸被示出在节点协调器之中分配。处理头寸使得节点协调器的每个线程向第一头寸应用不同于另一线程的市场状态推测。例如,图28描绘了在2700节点1的线程1向第一市场状态推测和第一头寸应用头寸定价信息以生成其定价结果。同时,节点1的线程将头寸定价函数应用于第四市场状态推测和第一头寸来生成其定价结果。
关于定价函数,客户端可在用于每种类型工具(例如,股票、债券、贷款等)的头寸数据中提供将使用哪种定价函数。例如华尔街公司可在网格计算环境能提供关于市场状态推测的信息的情况下指示一个Chevron股份价值多少。可使用许多不同类型的定价函数,诸如由提供的那些。(其位于Surrey,B.C.,Canada)提供包含用于定价和测量金融工具的风险的金融函数的分析套件。
网格计算环境可被配置成将所存储的风险因素映射到定价函数使得定价函数能执行。若需要,网格计算环境可将任何数据作为参数提供给定价函数之前在数学上操作它。以此方式,网格计算环境充当在网格计算环境的风险因素与定价函数的具体参数之间的“胶”。例如,可对于特定债券调用定价函数且基于参数集合(例如,参数“a”、“b”和“c”)来计算头寸价格。网格风险因素直接或间接地映射到定价函数的参数。系统风险参数可直接映射到参数“a”,而不同的系统风险因素可需要在其映射到定价函数的参数“b”之前在数学上操作。
节点协调器调用定价函数的次数可相当大。例如,假定存在1000000个头寸和10000个市场状态推测。由节点协调器做出的定价调用总数将为1000000乘以10000次调用(即,10000000000)。
定价函数可提供许多不同类型的输出。例如,定价函数可提供输出值的阵列且网格计算环境可选择这些输出中的哪些与用户问题最相关。输出值可包括对于债券价格相关的函数而言我的债券价格是什么,我的债券敞口是什么等。
图29和图30示出了可由节点协调器使用的不同的定价函数,取决于节点的线程所处理的头寸。如在2800处所描绘的那样,图29示出了当处理第一头寸时由节点1和2的线程使用的第一定价函数。图30描绘了在2900当处理第二头寸时由节点的线程使用的第二(例如,不同的)定价函数。尽管图29和图30描绘了节点1和2处理相同的头寸,应了解一个或多个节点可处理与其它节点当前处理的头寸不同的头寸。这样的情况将在图31中在3000讨论,其中由于头寸分配技术,一个或多个节点可能正在处理头寸,而在该链中之前的节点正在处理刚刚由中央协调器提供给第一节点的头寸。如图31处所示,中央协调器向第一节点提供第二头寸。但是,第一头寸将由该链中进一步向下的节点来处理(即,节点m,m+1等)。因此,节点1的线程将应用第二定价函数,因为其处理第二头寸,而节点m的线程将应用第一定价函数,因为其仍处理第一头寸。
图32描绘了在3100头寸定价结果的示例。如在此图中所示,Chevron股票在第一市场状态推测中为每份$29,在第二市场推测中为一份$36……,且在最后的市场状态推测中的价格为一份$14。换言之,存在对于所有可能的市场状态的可能价格。
每个节点协调器将所有其定价信息保持在其存储器中且在不同用户可能访问这些结果的情况下可选地写入到文件。在中央协调器请求时,每个节点协调器将其定价信息发送到中央协调器以进行进一步处理。存储定价结果的节点协调器的示例在图33中在3200处示出。如在此图中示出,头寸定价结果在各个节点协调器之中分配。更具体而言,每个节点协调器包含用于所有头寸和其所负责的所有市场状态推测的头寸定价结果。在此示例中,存在10000个市场状态推测和20个节点,每个节点具有4个线程。因此,每个节点负责500个市场状态推测(即,(10000个总市场状态推测)/(20节点))。对于这种分摊,节点协调器1负责10000总市场状态推测中的前500个,节点协调器2负责市场状态推测的接着的500个,等等。在一节点内,每个线程被提供市场状态推测的按比例分担(例如,每个线程125个市场状态推测)。此图示出了下面这样的实施例:节点协调器的线程1(T1)处置市场状态推测的第一集合,节点协调器的线程2(T2)处置市场状态推测的第二集合等。应了解可使用其它方案,诸如节点协调器1的T1处置第一市场状态推测,节点协调器1的T2处置第二市场状态推测等。
图34描绘了在3300从存储于节点协调器的数据导出的头寸定价结果阵列的示例。此信息阵列为当其对于用户查询做出响应时将由中央协调器聚集什么。
此图还示出了从节点协调器生成X’X矩阵、L‘矩阵、市场状态推测和头寸定价结果时,在节点协调器处会发生哪些存储器重新配置。节点协调器在它们生成前述数据中每一个时改变其节点存储器布局。在由每个节点协调器最终重新配置存储器时,用户然后能查询(通过中央协调器间接地)在节点协调器处存储的头寸定价结果。
如图35所示,在节点协调器的信息在所有步骤中保持在存储器2304中使得其由根节点来聚集3400以便向用户提供不同水平的答案3402。例如,例如,只要网格计算环境完成了市场状态推测的计算,中间结果无需保持在存储器中,因为它们是用户特别查询不需要的。作为另一示例,只要使用Cholesky根生成了市场状态,其并不保持超过中间步骤且存储器可被释放且重新配置。
如上文所指出的那样,头寸定价结果在它们创建之后保持在存储器中。完全在存储器内这样做且无需将其写入到盘的能力可在某些情形下得到优点。例如,网格计算环境能处理敏感的金融信息,这些金融信息可能要符合关于信息保密性的法规。由于敏感的金融信息仅保持在存储器内,并未牵扯到关于敏感金融数据的安全性法规和其在非易失性存贮器上的存储。此外,用户查询存储于存储器中的定价信息;在完成了查询过程之后,在该会话结束时从易失性存储器移除这条信息。因此,在此示例中,信息并未存储到盘,从而排除或显著地降低了安全漏洞的风险。但是,应了解可利用各种其它的存储方案来适应当时的情况,诸如在非易失性存储器中存储在后来使用的头寸定价信息。如果用户想要在数星期后重新开始已经发生过的会话或者允许另一用户(其被授权)访问头寸定价信息,这可为有帮助的。
图36在3500描绘了针对于聚集自节点协调器的结果且使用结果来对于特别用户查询做出响应的函数。中央协调器从每个节点协调器接收个别头寸定价结果。中央协调器在回答自用户查询之前以一定水平聚集头寸定价结果。中央协调器也可在基于所处理的数据来形成查询响应之前对所聚集的数据执行额外数学运算(例如,描述性统计运算)。在处理了查询之后,中央协调器准备接收另一用户查询且提供基于存储于节点协调器的详细头寸定价结果的响应。
关于自节点协调器的结果的聚集,图37描绘了在3600由节点协调器生成的价格头寸的阵列如何由中央协调器用于聚集结果和报告目的。中央协调器执行存储于各个根节点的信息的汇总,并且如果需要的话,执行描述性统计以对于来自用户的查询做出响应。
作为说明,考虑下面这样的情形:所有节点协调器具有Google和Microsoft股票信息,且第一节点协调器具有用于前1000市场状态推测的的头寸信息。第一节点协调器将用于其市场状态推测的其Google和Microsoft头寸定价结果发送到中央协调器以进行聚集。同样,其它节点协调器将用于它们相应市场状态推测的其Google和Microsoft头寸定价结果发送到中央协调器。中央协调器将结合这些集合以满足用户查询。(应当指出的是每个节点协调器(与其它节点协调器并行地)也对基于从其相应线程接收的头寸定价信息执行其自己的聚集)简言之,由于基本原始生成的数据持续地存储于存储器或盘中,中央协调器能在任何水平对于特别用户查询做出回答。这避免了网格必须在生成市场状态推测和头寸定价之前知道查询的要求。
中央协调器可被配置成在存储器中保持最后一次的查询和其结果,使得如果最后一次查询结果与随后的查询有关,那么这些结果可用于处置该随后的查询。这免除了从节点协调器检索信息来处置随后的查询的需要。中央协调器可被配置成在随后的查询并未映射到最近的查询的情况下放弃查询结果。在此方案中,中央协调器从节点协调器检索头寸定价结果以便满足最近的查询。
发回到客户端的查询结果可以许多不同方式使用,诸如存储于客户端位置的数据库中,在图形用户界面上显示,进一步处理用于额外分析等。
图38在3700描绘了在节点协调器执行分类变量处理来向用户计算机提供查询结果。作为头寸定价信息的部分,分类变量用于标识用户可能想要查询的特定数据条目(例如,查询标准)。例如,分类变量可为地理。使用地理分类变量,用户能调查相对于国家水平的州水平的头寸定价信息。作为另一示例,分类变量可以是行业界(industry sector),由此,用户可能想要调查计算机行业的总体的头寸定价信息或者可能想要深度探讨和调查与计算机行业中的具体公司相关联的头寸信息。
为了辅助分类变量处理,节点协调器使得水平与其相应头寸定价数据内的值相关联。节点协调器注意每个头寸与分类变量的特定水平关联。因此,在查询期间,用户查询可表明客户端希望基于特定分类变量的累积且被提供与该分类变量相关联的描述性统计或者分类变量的组合(例如,变量的交叉分类,诸如对于此区域提供逐个公司的分解分析)。中央协调器从分别节点协调器接收处理的数据且聚集它们。
如果用户优选更高水平的信息来进行查询,那么节点协调器可聚集其相应详细定价信息来满足第一查询。如果用户提供在更详细水平的第二查询,那么节点协调器在更详细水平聚集其详细定价信息以满足第二查询。在这些不同的水平,用户能获悉它们挣钱还是赔钱。
例如,用户能获悉用户在计算机行业界中具有更高水平的赔钱风险,但在不同的行业界中具有低水平的赔钱风险。然后用户能提出查看关于计算机行业中的哪个具体公司对于该用户而言会赔钱的更详细的细节。在接收到此随后的查询时,节点协调器处理比位于较高行业界水平的初始查询更低详细水平的业界分类变量相关联的头寸定价数据。
图39描绘了在3800涉及网格计算环境的多用户环境。在这样的环境中,每个用户接收其自己的中央协调器以处置其自己的查询和其自己的节点协调器。如在图40中在3900所示,如果授权另一用户访问另一用户的定价信息结果,那么第二中央协调器能访问该第一用户的头寸定价结果。这在第一用户的结果写入到文件的情况下是便利的。在此情况下,第二用户中央协调器访问头寸定价信息文件以处置自第二用户的查询。应了解用于处置多用户查询的方案可包括避免将信息写入到非易失性存储器,而是替代地将其保持在网格的易失性存储器中且允许其他用户通过其相应中央协调器来访问此内容。
本书面描述使用实例来公开本发明,包括最佳实施方式,使得本领域技术人员能做出和使用本发明。本发明的专利范围可包括其它示例。例如,本文所述的系统和方法可用于如图41所示的市场压力测试目的。确定给定系统或实体的稳定性。市场压力测试涉及调查超过正常运算能力(常常到断裂点)的市场状态推测且分析头寸定价结果。如在图41中的4000处所示,网格计算环境处理由用户请求的头寸的仅一个市场状态推测。极端的市场状态推测和不同的头寸由中央协调器分配给节点协调器。节点协调器的每个线程调查关于同一市场状态推测的不同头寸。每个线程的结果存储于其相应节点的共享存储器中。然后中央协调器聚集这些结果来满足用户查询。应当指出的是本文所述的非压力测试示例规定节点中的每一个处理相同头寸,但用于不同市场状态推测。在图41中所描绘的压力测试方案中,节点中的每一个处理相同的市场状态推测,但用于不同头寸。这个差异以每个节点存储其结果的方式进一步示出。图42描绘了在4100在每个节点处存储压力测试结果。在此示例中,存在1000000头寸和1个市场状态推测。如果存在20个节点,那么每个节点将处理500000个头寸用于1个市场状态推测。因此,每个节点将存储50,000个头寸定价。另外,如果每个节点存在4个线程,那么每个节点将处理125000个头寸且将相对应地存储12500个头寸定价。
图41和图42的示例可在许多不同类型的应用中执行压力测试,诸如调查股票、债券或其它类型的金融工具可能在特定崩盘情景下如何反应,诸如:
*如果油价升高200%将会发生什么情况?
*如果失业率到达10%将会发生什么情况?
*如果市场以超过今年x%崩盘将会发生什么情况。
*如果利率升高至少y%将会发生什么情况。
作为本文所公开的系统和方法的广泛范围的另一示例,系统和方法可包括经由网络(例如,局域网、广域网、互联网、其组合等)、光纤介质、载波、无线网络等传送的数据信号以与一个或多个数据处理设备通信。数据信号可承载本文所公开的向设备提供或自设备提供的任何或所有数据。
作为本文所公开的系统和方法的广泛范围的另一示例,应了解本文所公开的技术并不限于风险定价,而是也可包括涉及更大数据集和矩阵分解的任何类型的问题。作为另一示例,应了解可使用配置使得常规方案用于生成市场状态推测(例如,通过使用SAS风险尺寸产品),但使用本文所述的头寸定价方案。相对应地,可使用一配置使得如本文所公开的市场状态生成方案可提供到常规头寸定价应用的输出。
此外,本文所述的方法和系统可由程序代码而实施于许多不同类型的处理设备上,程序代码包括可由设备处理子系统执行的程序指令。软件程序指令可包括源代码、目标代码、机器代码或能使得处理系统执行本文所述的方法和操作的任何其它存储数据。但也可使用其它实施方式,诸如被配置成执行本文所述的方法和系统的固件或甚至适当设计的硬件。
系统和方法的数据(例如,关联、映射、数据输入、数据输出、中间数据结果、最终数据结果等)可存储和实施于一个或多个不同类型的计算机实施的数据存贮器中,诸如不同类型的存储设备和编程的构造(例如,RAM、ROM、闪速存储器、平面文件、数据库、编程数据结构、编程变量、IF-THEN(或相似类型)陈述构造等)。应当指出的是数据结构描述了用于在数据库、程序、存储器或由计算机程序使用的其它计算机可读介质中组织和存储数据的格式。
本文所述的计算机组件、软件模块、功能、数据存贮器和数据结构可直接或间接连接到彼此以允许其运算所需的数据流动。还应当指出模块或处理器包括(但不限于)执行软件操作的代码单元且能例如实施为代码的子程序单元或者实施为代码的软件功能单元或者实施为对象(例如,在面向对象的范例中)或者实施为小应用程序,或者在计算机脚本语言中或者实施为另一类型的计算机代码。软件组件和/或函数可位于单个计算机上或者在多个计算上分布,取决于当时的情形。
应了解如在本文的描述中和在所附权利要求中使用的“一”、“该”和“所述”的意义包括复数参考,除非上下文清楚地指示为其它意义。而且,如在本文的描述和所附权利要求中所用的“在……中”的意义包括“在……中”和“在……上”,除非上下文清楚地表示为其它意义。最后,如在本文的描述和所附权利要求中所用的“和”和“或”的意义包括联合性和分离性且可互换地使用,除非上下文清楚地表示为其它意义;短语“异或(互斥或)”可用于表示仅采用分离性意义的情况。

Claims (42)

1.一种用于分布式数据处理的非易失性计算机可读存储媒体,所述非易失性计算机可读存储媒体存储有指令,所述指令可操作以使得处理器执行以下操作:
访问风险因素历史数据的多个维度的样本,其中所述样本包括关于所述多个维度中的每一者的多个观察,其中所述多个维度中的每一者与唯一的风险因素相关联,且其中所述多个维度的样本在计算装置上被访问;
基于所述历史数据计算叉乘矩阵,其中该计算通过使用分布式计算来执行且包括以下步骤:
将所述多个维度的样本分割成多个数据分区;以及
将所述数据分区在多个网格计算节点之间分配,其中该分配包括使用波分配技术使得多个分区中的一者在一对节点之间通信同时所述多个分区中的另一者在另一对节点之间通信,且其中所述节点中的每一者计算并存储所述叉乘矩阵的唯一部分,所述唯一部分中的每一者使用所述数据分区中的至少一者来计算;
与所述节点通信,其中该通信使得所述节点分解所述叉乘矩阵;
向所述节点中的每一者提供随机向量的唯一集合,其中所述节点中的每一者使用所分解的叉乘矩阵和向所述节点提供的随机向量的所述集合生成多个市场状态推测;
将预定的资产定价函数分配给多个节点,其中所述节点中的每一者基于各自生成的市场状态推测和所述资产定价函数来推测并存储资产价格;
接收查询;
从存储多个资产价格的节点处检索多个资产价格;以及
生成针对所述查询的响应,其中该生成基于所检索的资产价格。
2.根据权利要求1所述的非易失性计算机可读存储媒体,其中分解所述叉乘矩阵包括形成所述叉乘矩阵的Cholesky分解。
3.根据权利要求2所述的非易失性计算机可读存储媒体,其中形成Cholesky分解包括使用前向Doolittle方案。
4.根据权利要求3所述的非易失性计算机可读存储媒体,其中使用所述前向Doolittle方案包括执行高斯消去法。
5.根据权利要求2所述的非易失性计算机可读存储媒体,其中所述Cholesky分解包括上三角形矩阵或下三角形矩阵以及所述三角形矩阵的转置。
6.根据权利要求1所述的非易失性计算机可读存储媒体,其中:
使得所述节点分解所述叉乘矩阵包括将不同的计算任务指派给所述多个节点中的每一者;
所述节点包括第一数量的节点,
将不同的计算任务指派给所述节点中的每一者包括将所述第一数量提供给所述节点中的每一者;以及
所述节点处理所述第一数量以确定所述不同的计算任务的指派。
7.根据权利要求1所述的非易失性计算机可读存储媒体,其中所述操作进一步包括:
将所述多个维度的样本存储为矩阵,其中所述数据分区的每一者是所述矩阵的唯一行。
8.根据权利要求7所述的非易失性计算机可读存储媒体,其中分配所述数据分区包括单独分配所述矩阵的行。
9.根据权利要求1所述的非易失性计算机可读存储媒体,其中生成多个市场状态推测包括执行随机模拟。
10.根据权利要求1所述的非易失性计算机可读存储媒体,其中每一市场状态推测是针对所述风险因素中的一者的未来数据的随机化预报。
11.根据权利要求1所述的非易失性计算机可读存储媒体,其中所述操作进一步包括:
对所检索的资产价格执行统计分析,其中针对所述查询的所述响应指示所述统计分析的结果。
12.根据权利要求11所述的非易失性计算机可读存储媒体,其中执行所述统计分析包括:
确定所检索的资产价格的平均值;
确定所检索的资产价格的分布;以及
描绘包括95%的所检索的资产价格且以所述平均值为中心并围绕着所述平均值的分布的一部分。
13.根据权利要求1所述的非易失性计算机可读存储媒体,其中检索多个资产价格包括检索关于投资组合中的每一资产的多个资产价格,且其中所述操作进一步包括:
聚集所述多个资产价格以预报针对多个市场状态中的每一者的投资组合的值,其中针对所述查询的所述响应进一步基于所述投资组合的所预报的值。
14.根据权利要求1所述的非易失性计算机可读存储媒体,进一步包括从存储资产的所述节点处检索至少一个资产的所有资产价格。
15.一种用于分布式数据处理的系统,其包含:
处理器,所述处理器经配置以执行以下操作:
访问风险因素历史数据的多个维度的样本,其中所述样本包括关于所述多个维度中的每一者的多个观察,其中所述多个维度中的每一者与唯一的风险因素相关联,且其中所述多个维度的样本在计算装置上被访问;
基于所述历史数据计算叉乘矩阵,其中该计算通过使用分布式计算来执行且包括以下步骤:
将所述多个维度的样本分割成多个数据分区;以及
将所述数据分区在多个网格计算节点之间分配,其中该分配包括使用波分配技术使得多个分区中的一者在一对节点之间通信同时所述多个分区中的另一者在另一对节点之间通信,且其中所述节点中的每一者计算并存储所述叉乘矩阵的唯一部分,每一唯一部分使用所述数据分区中的至少一者来计算;
与所述节点通信,其中该通信使得所述节点分解所述叉乘矩阵;
向所述节点中的每一者提供随机向量的唯一集合,其中所述节点中的每一者使用所分解的叉乘矩阵和向所述节点提供的随机向量的所述集合生成多个市场状态推测;
将预定的资产定价函数分配给多个节点,其中每一节点基于各自生成的市场状态推测和所述资产定价函数来推测并存储资产价格;
接收查询;
从存储多个资产价格的节点处检索多个资产价格;以及
生成针对所述查询的响应,其中该生成基于所检索的资产价格。
16.根据权利要求15所述的系统,其中分解所述叉乘矩阵包括形成所述叉乘矩阵的Cholesky分解。
17.根据权利要求16所述的系统,其中形成Cholesky分解包括使用前向Doolittle方案。
18.根据权利要求17所述的系统,其中使用所述前向Doolittle技术包括执行高斯消去法。
19.根据权利要求16所述的系统,其中所述Cholesky分解包括上三角形矩阵或下三角形矩阵以及所述三角形矩阵的转置。
20.根据权利要求15所述的系统,其中:
使得所述节点分解所述叉乘矩阵包括将不同的计算任务指派给所述多个节点中的每一者;
所述节点包括第一数量的节点,
将不同的计算任务指派给所述节点中的每一者包括将所述第一数量提供给所述节点中的每一者;以及
所述节点处理所述第一数量以确定所述不同的计算任务的指派。
21.根据权利要求15所述的系统,其中所述操作进一步包括:
将所述多个维度的样本存储为矩阵,其中所述数据分区的每一者是所述矩阵的唯一行。
22.根据权利要求21所述的系统,其中分配所述数据分区包括单独分配所述矩阵的行。
23.根据权利要求15所述的系统,其中生成多个市场状态推测包括执行随机模拟。
24.根据权利要求15所述的系统,其中每一市场状态推测是针对所述风险因素中的一者的未来数据的随机化预报。
25.根据权利要求15所述的系统,其中所述操作进一步包括:
对所检索的资产价格执行统计分析,其中针对所述查询的所述响应指示所述统计分析的结果。
26.根据权利要求25所述的系统,其中执行所述统计分析包括:
确定所检索的资产价格的平均值;
确定所检索的资产价格的分布;以及
描绘包括95%的所检索的资产价格且以所述平均值为中心并围绕着所述平均值的分布的一部分。
27.根据权利要求15所述的系统,其中检索多个资产价格包括检索关于投资组合中的每一资产的多个资产价格,且其中所述计算进一步包含:
聚集所述多个资产价格以预报针对多个市场状态中的每一者的投资组合的值,其中针对所述查询的所述响应进一步基于所述投资组合的所预报的值。
28.根据权利要求15所述的系统,进一步包括从存储资产的所述节点处检索至少一个资产的所有资产价格。
29.一种用于分布式数据处理的计算机实施方法,其包含:
访问风险因素历史数据的多个维度的样本,其中所述样本包括关于所述多个维度中的每一者的多个观察,其中每一维度与唯一的风险因素相关联,且其中所述多个维度的样本在计算装置上被访问;
基于所述历史数据计算叉乘矩阵,其中该计算通过使用分布式计算来执行且包括以下步骤:
将所述多个维度的样本分割成多个数据分区;以及
将所述数据分区在多个网格计算节点之间分配,其中该分配包括使用波分配技术使得多个分区中的一者在一对节点之间通信同时所述多个分区中的另一者在另一对节点之间通信,且其中每一节点计算并存储所述叉乘矩阵的唯一部分,每一唯一部分使用所述数据分区中的一者来计算;
与所述节点通信,其中该通信使得所述节点分解所述叉乘矩阵;
向所述节点中的每一者提供随机向量的唯一集合,其中每一节点使用所分解的叉乘矩阵和向所述节点提供的随机向量的所述集合生成多个市场状态推测;
将预定的资产定价函数分配给多个节点,其中每一节点基于各自生成的市场状态推测和所述资产定价函数来推测并存储资产价格;
接收查询;
从存储多个资产价格的节点处检索多个资产价格;以及
生成针对所述查询的响应,其中该生成基于所检索的资产价格。
30.根据权利要求29所述的方法,其中分解所述叉乘矩阵包括形成所述叉乘矩阵的Cholesky分解。
31.根据权利要求30所述的方法,其中形成Cholesky分解包括使用前向Doolittle方案。
32.根据权利要求31所述的方法,其中使用所述前向Doolittle方案包括执行高斯消去法。
33.根据权利要求30所述的方法,其中所述Cholesky分解包括上三角形矩阵或下三角形矩阵以及所述三角形矩阵的转置。
34.根据权利要求29所述的方法,其中:
使得所述节点分解所述叉乘矩阵包括将不同的计算任务指派给所述多个节点中的每一者;
所述节点包括第一数量的节点,
将不同的计算任务指派给所述节点中的每一者包括将所述第一数量提供给所述节点中的每一者;以及
所述节点处理所述第一数量以确定所述不同的计算任务的指派。
35.根据权利要求29所述的方法,进一步包括:
将所述多个维度的样本存储为矩阵,其中所述数据分区的每一者是所述矩阵的唯一行。
36.根据权利要求35所述的方法,其中分配所述数据分区包括单独分配所述矩阵的行。
37.根据权利要求29所述的方法,其中生成多个市场状态推测包括执行随机模拟。
38.根据权利要求29所述的方法,其中每一市场状态推测是针对所述风险因素中的一者的未来数据的随机化预报。
39.根据权利要求29所述的方法,进一步包括:
对所检索的资产价格执行统计分析,其中针对所述查询的所述响应指示所述统计分析的结果。
40.根据权利要求39所述的方法,其中执行所述统计分析包括:
确定所检索的资产价格的平均值;
确定所检索的资产价格的分布;以及
描绘包括95%的所检索的资产价格且以所述平均值为中心并围绕着所述平均值的分布的一部分。
41.根据权利要求29所述的方法,其中检索多个资产价格包括检索关于投资组合中的每一资产的多个资产价格,且其中所述方法进一步包括:
聚集所述多个资产价格以预报针对多个市场状态中的每一者的投资组合的值,其中针对所述查询的所述响应进一步基于所述投资组合的所预报的值。
42.根据权利要求29所述的方法,进一步包括从存储资产的所述节点处检索至少一个资产的所有资产价格。
CN201510387679.9A 2010-02-12 2011-02-11 用于在网格计算环境中运算的情景状态处理系统和方法 Active CN105159867B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/705,204 US20110202329A1 (en) 2010-02-12 2010-02-12 Scenario State Processing Systems And Methods For Operation Within A Grid Computing Environment
US12/705,204 2010-02-12
CN201180018683.8A CN102834809B (zh) 2010-02-12 2011-02-11 用于在网格计算环境中运算的情景状态处理系统和方法

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201180018683.8A Division CN102834809B (zh) 2010-02-12 2011-02-11 用于在网格计算环境中运算的情景状态处理系统和方法

Publications (2)

Publication Number Publication Date
CN105159867A CN105159867A (zh) 2015-12-16
CN105159867B true CN105159867B (zh) 2018-04-17

Family

ID=44148775

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201180018683.8A Active CN102834809B (zh) 2010-02-12 2011-02-11 用于在网格计算环境中运算的情景状态处理系统和方法
CN201510387679.9A Active CN105159867B (zh) 2010-02-12 2011-02-11 用于在网格计算环境中运算的情景状态处理系统和方法

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN201180018683.8A Active CN102834809B (zh) 2010-02-12 2011-02-11 用于在网格计算环境中运算的情景状态处理系统和方法

Country Status (6)

Country Link
US (2) US20110202329A1 (zh)
EP (1) EP2534579A1 (zh)
CN (2) CN102834809B (zh)
CA (1) CA2789632C (zh)
HK (2) HK1218969A1 (zh)
WO (1) WO2011100557A1 (zh)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9665405B1 (en) 2010-02-12 2017-05-30 Sas Institute Inc. Distributed systems and methods for state generation based on multi-dimensional data
WO2013070152A2 (en) * 2011-11-07 2013-05-16 Binary Bio Ab Dynamic dataflow network
US10180943B2 (en) 2013-02-28 2019-01-15 Microsoft Technology Licensing, Llc Granular partial recall of deduplicated files
US9665403B2 (en) 2013-03-15 2017-05-30 Miosoft Corporation Executing algorithms in parallel
US9613112B2 (en) 2013-03-15 2017-04-04 Miosoft Corporation Structuring data
CN103118393A (zh) * 2013-03-18 2013-05-22 山东大学 一种基于数据采集的无线自组网仿真平台及仿真方法
US20150142626A1 (en) * 2013-11-15 2015-05-21 International Business Machines Corporation Risk scenario generation
US9563725B2 (en) 2014-02-19 2017-02-07 Sas Institute Inc. Techniques for estimating compound probability distribution by simulating large empirical samples with scalable parallel and distributed processing
US10664914B2 (en) * 2014-07-21 2020-05-26 American International Group, Inc. Portfolio optimization and evaluation tool
US9946719B2 (en) 2015-07-27 2018-04-17 Sas Institute Inc. Distributed data set encryption and decryption
US9703789B2 (en) 2015-07-27 2017-07-11 Sas Institute Inc. Distributed data set storage and retrieval
CN108512715B (zh) * 2017-02-28 2021-11-02 菜鸟智能物流控股有限公司 一种业务链路的负载压力测试方法和相关装置
US11334588B1 (en) 2017-06-05 2022-05-17 Amazon Technologies, Inc. Analysis engine data intake
CN109726737B (zh) * 2018-11-27 2020-11-10 武汉极意网络科技有限公司 基于轨迹的异常行为检测方法及装置
US10848388B1 (en) * 2019-07-12 2020-11-24 Deloitte Development Llc Distributed computing framework

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101453398A (zh) * 2007-12-06 2009-06-10 怀特威盛软件公司 一种新型分布式网格超级计算系统及方法
CN101611381A (zh) * 2007-03-16 2009-12-23 富士通微电子株式会社 负荷分散方法、负荷分散程序以及负荷分散装置

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2808909B1 (fr) * 2000-05-11 2005-06-03 Jean Marie Billiotte Procede de simulation stochastique centralisee et teletransmission de scenarios probables pour l'optimisation probabiliste des parametres de systemes industriels distants
AU2002365812A1 (en) * 2001-12-04 2003-06-17 Powerllel Corporation Parallel computing system, method and architecture
US8032635B2 (en) * 2005-07-29 2011-10-04 Sap Ag Grid processing in a trading network
US20070118839A1 (en) * 2005-10-24 2007-05-24 Viktors Berstis Method and apparatus for grid project modeling language
US8245232B2 (en) * 2007-11-27 2012-08-14 Microsoft Corporation Software-configurable and stall-time fair memory access scheduling mechanism for shared memory systems
WO2009143073A1 (en) * 2008-05-19 2009-11-26 The Mathworks, Inc. Parallel processing of distributed arrays

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101611381A (zh) * 2007-03-16 2009-12-23 富士通微电子株式会社 负荷分散方法、负荷分散程序以及负荷分散装置
CN101453398A (zh) * 2007-12-06 2009-06-10 怀特威盛软件公司 一种新型分布式网格超级计算系统及方法

Also Published As

Publication number Publication date
CN102834809B (zh) 2016-06-29
US20110202329A1 (en) 2011-08-18
CN102834809A (zh) 2012-12-19
CN105159867A (zh) 2015-12-16
WO2011100557A1 (en) 2011-08-18
CA2789632C (en) 2016-07-12
CA2789632A1 (en) 2011-08-18
HK1218969A1 (zh) 2017-03-17
US20150149241A1 (en) 2015-05-28
HK1175564A1 (zh) 2013-07-05
EP2534579A1 (en) 2012-12-19

Similar Documents

Publication Publication Date Title
CN105159867B (zh) 用于在网格计算环境中运算的情景状态处理系统和方法
Jula et al. Cloud computing service composition: A systematic literature review
Danesh et al. A systematic comparison of multi-criteria decision making methods for the improvement of project portfolio management in complex organisations
Kumar et al. Integrated blockchain and internet of things in the food supply chain: Adoption barriers
Hu et al. An ANP-multi-criteria-based methodology to construct maintenance networks for agricultural machinery cluster in a balanced scorecard context
Babbar-Sebens et al. A web-based software tool for participatory optimization of conservation practices in watersheds
CN106462795A (zh) 用于针对金融市场中的大数据交易将资本分配到交易策略的系统及方法
Litvinchev et al. Large-scale public R&D portfolio selection by maximizing a biobjective impact measure
Hernes et al. Application of the consensus method in a multiagent financial decision support system
Heilig et al. Location-aware brokering for consumers in multi-cloud computing environments
Borade et al. Interpretive structural modeling-based framework for VMI adoption in Indian industries
Prakash et al. A grey based approach for assessment of risk associated with facility location in global supply chain
Blau et al. A multidimensional procurement auction for trading composite services
CN109934708A (zh) 一种本地多策略模拟交易方法及系统装置
Šperka et al. Control loop model of virtual company in BPM simulation
Kim et al. Online risk analytics on the cloud
Tönissen et al. Using 3D-printing in disaster response: The two-stage stochastic 3D-printing knapsack problem
CN110321218A (zh) 一种基于点对点网络系统求解混合整数程序的方法
Ludwig Memetic algorithms applied to the optimization of workflow compositions
Zakharova et al. Information technology for the decision-making process in an investment company
Malhotra SIDE: A Decision Support System Using a Combination of Swarm Intelligence and Data Envelopment Analysis
Shevchenko et al. IPO–The Pattern of Hierarchy with a Variety of Alternatives upon Criteria
JP2004094662A (ja) 信用リスク管理の最適化モデル適用方法及び装置
Shebanow et al. Let's trade futures! a novel approach for cloud computing resource planning and management
Selvan et al. Modernizing cloud computing systems with integrating machine learning for multi-objective optimization in terms of planning and security

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1218969

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant
REG Reference to a national code

Ref country code: HK

Ref legal event code: GR

Ref document number: 1218969

Country of ref document: HK