分步式计算接口的问题

danscort2000 2008-03-07 04:31:08
Intel的朋友
问点可能无关的问题
你们在推并行计算技术
我想做一个服务器软件的接口,用来支持分布式计算
当然也可以分布式并行计算,不过好象难度大了点^__^

是这样的,我写了服务器和客户端软件,本身是用来支持分布式P2P传输的
新的版本我把它的协议升级了,现在可以支持DLL形式的分布式计算,这个是开放代码和接口的
在测试中我也已经实现了分布式计算,只要动几下鼠标,自己编写两个函数就可以实现
问题在于
我想把这个功能标准化,也就是让它能够支持尽可能多的其他用户可能会用到的分布式计算
所以这个接口比较难定义

目前我的函数接口,调用端和执行端[可以有多个点]的入口参数是
const __int64 pDll_XXXXXXXXXXXXXX(SOCKET s , const __int32 i_usernumber ,const __int32 i_threadnum, const __int32 i_version ,const unsigned __int64 u64_dllcrc , char * p_buffer , const char * p_str=NULL)

SOCKET s,系统自动负责两个点之间的连接[可以是INTERNET上任何两台运行我的软件的计算机,用鼠标就可以操作,和FTP用相同的界面],程序保证这个SOCKET是有效的,并且已经连接成功
i_usernumber ,对方用户在服务器上的用户编号
i_threadnum ,本地机器上第几个工作线程
i_version , dll版本号
u64_dllcrc , dll的一个自身校验,可以识别DLL是否为相同
p_buffer ,是个缓冲区,里面保存了对方传递过来的一个不超过2000字节的函数参数
p_str目前没有使用

这样的接口合理吗?有更好的推荐没有?
另外,客户端启动前,都会调用一个扩展DLL初始化函数,这个可以由编写者自己决定

还有需要补充否?

也就是说,如果用户想编写代码执行自己的分布式计算,现在不需要从头写,只要写DLL里的函数,因为我们的服务器和客户端可以负责帐号管理,版本校验,网络连接等工作,这样是否合理?

...全文
195 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
danscort2000 2008-03-15
  • 打赏
  • 举报
回复
做是做好了,基本测试已经完成,进入稳定性测试阶段了
但是分布式部分的接口,由于是DLL开放代码形式
因此想形成一个比较统一并合理的API接口,比较头痛
共享的,以前版本对国内大学发过几个带限制免费授权
可以免费使用,只是限制在线的共享点为8个。
yangyun10 2008-03-15
  • 打赏
  • 举报
回复
你做好了吗?是收费产品?免费试用?
danscort2000 2008-03-14
  • 打赏
  • 举报
回复
看过BSD BOINC了,非常感谢
不过是乎很不一样
BOINC是集中非实时的分布式计算,实现编写好代码供用户下载,然后分发数据,并没有实时交互,发布者也无法选择用户
我的是这样的,发布者可以自己选择由那些在线人[COMPUTER]执行任务,并实时参与到运算的整个过程,包括数据的及时多次交互

最大的区别是 BOINC下载后无联系,属于发射后不管 ; 而我的是可全程监控
danscort2000 2008-03-13
  • 打赏
  • 举报
回复
谢谢
看过BOINC了
但是不一样
BOINC没有实时参数的需求,比较适合单一服务器多CLIENT的形式,中心服务器只需要分配任务并接收计算结果就可以,而且计算代码需要事先传递到服务器,也无法选择自己合适的CLIENT执行计算

我的是 由CLIENT自己发起并选择多个合适的CLIENT,源CLIENT负责分配任务并接收结果,并可以实时监督计算过程,用途不一样

还是非常感谢
flyingdog 2008-03-12
  • 打赏
  • 举报
回复
写错了,是BOINC
flyingdog 2008-03-12
  • 打赏
  • 举报
回复
你可以参考一下BONIC

567

社区成员

发帖
与我相关
我的任务
社区描述
英特尔® 边缘计算,聚焦于边缘计算、AI、IoT等领域,为开发者提供丰富的开发资源、创新技术、解决方案与行业活动。
社区管理员
  • 英特尔技术社区
  • shere_lin
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧