2016-09-22 109 views
1

英特尔销我有一个与此命令normaly运行pintool:与搬运工人

../../../pin -injection child -t obj-intel64/mypintool.so -- obj-intel64/myexcecutable 

我想在myexcecutable位置放一个docker program与此命令运行:

docker run --rm --net spark-net --volumes-from data \ 
      cloudsuite/graph-analytics \ 
      --driver-memory 1g --executor-memory 4g \ 
      --master spark://spark-master:7077 

时我试图用docker命令简单地替换-- obj-intel64/myexecutable,pintool正常启动,但没有正常完成。

我相信用这种方式我的pintool附加到码头,而不是我想要的包含应用程序。

我该怎么做,正确地将我的pintool附加到与docker一起运行的程序中?

回答

1

我不是码头专家,但以这种方式运行它确实会使码头工具成为码头工程师。您需要将pin放入docker实例中,并在pin下的docker实例中运行可执行文件。也就是说,命令行应该看起来像这样:

docker -run <docker arguments> pin <pin arguments> --myexecutable <executable arguments> 
+0

这就是为什么我做了这个问题,这是我第一次尝试。码头工人不让我这样做...正如我可以注意到,码头使用容器,但不是可执行文件。这是我真正的问题。我试图找到主(服务器)可执行文件来通过我的pintool运行它! - > http://cloudsuite.ch/graphanalytics/在这里你可以看到码头基准 – user1969182

+0

我认为这是你正在寻找的:http://stackoverflow.com/questions/27105112/howto-modify-an-docker-图像 - 即-被创建的从 - 的存在的酮 – nitzanms