几个好玩的东西

docker 与 mesos

前面说了一些 docker 相关的东西,现在某些人正准备把 docker 和 mesos 之类的弄在一块,mesos 可以看成是一个“集群管理”的 scheduler,其好处是可以将不同类型的任务部署到一个 node pool 里面,常见的 hadoop、spark、storm 等平台都可以很容易通过它来进行部署。我们知道 docker 作为一个 general app 的 container 管理程序,很自然的一个作用就是可以将应用服务也通过 mesos 部署到这个 pool 中,不过似乎应用的需求跟一般 map/reduce 不大一样,除了往往需要有 load balancer 等配套设施以外,它们往往具有更长周期,这种尝试不晓得是不是非常合理。要玩的话似乎应该用 marathon 这个东西,这是专门为“service”类型准备的,

现在 Mesos + Docker 的构架

这里有一篇详细介绍这个东西的文章,看起来不是那么难弄。

metaphore、NT2 与 boost.SIMD

今天收到一封邮件,看到一个叫 metascala 的公司/组织提供的几个看起来很有意思的东西:

  • Metaphore 是 matlab 语言子集的一个实现,有一些 matlab 没有的 type inference 之类的特性,好处是这部分可以被编译成 C++ 代码执行
  • 编译的工具就是 NT2,这也意味着 Matlab 程序中某些部分你可以用 NT2 编译并仍然能和 Matlab 自身交互
  • 最后这部分 boost.SIMD 也是准备进入 boost 的一个库(支撑 NT2)

SIMD 和一般的 concurrency 不同的是它是通过特殊的 CPU 指令来加速计算,SIMD(single instruction multi data)是一种所谓的 data parallelism,与其对立的是 task parallelism,也就是说 SIMD 通过数据的分割来进行并行化(类似的例子自然是 map/reduce)。Intel 的 x86 上的 SSE 指令集就是专门为这个设计的。不晓得 ublas 跟这个能不能连起来用,性能是否能接近 Atlas 之类的优化过的 cBLAS。

TLA+ 与 PlusCal

这两个绝对是高端货,Leslie Lamport 同学弄的一个所谓 temporal logic,作用是用来描述某些并发系统的性质,通过类似形式系统的自动分析来判定一个并行系统的设计是否存在问题,后者前者的一个类似程序员的 frontend,提供了接近伪代码的语法,觉得是不是做系统的高级人士都应该掌握一点这个小东西,用来验证自己的系统。

——————
And Laban called it Jegarsahadutha: but Jacob called it Galeed.

Advertisements
几个好玩的东西

发表评论

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / 更改 )

Twitter picture

You are commenting using your Twitter account. Log Out / 更改 )

Facebook photo

You are commenting using your Facebook account. Log Out / 更改 )

Google+ photo

You are commenting using your Google+ account. Log Out / 更改 )

Connecting to %s