我正在使用T2.medium实例.一天中的三分之一,我正在进行密集的统计计算,并认为其余的2/3时间我将以每小时24小时的速度"获得"积分.
但那并没有发生.这是我最近两天的使用情况:
这是我的信用账户:
直到昨天下午6点,我还没有用它(超过一天).我用它密集了五个小时.然后我希望我的"帐户"每小时能累积24个学分,但是9-10个小时几乎没有任何反应,然后它按预期累计9个小时然后再次变平.
我无法弄清楚发生了什么以及是否是一个错误.有没有人有一个很好的解释?
编辑:我在下面列出了一周的活动.我仍然无法弄清楚算法:
我试图围绕如何使用GCD来并行化和加速蒙特卡罗模拟.大多数/所有简单示例都是针对Objective C提供的,我真的需要一个Swift的简单示例,因为Swift是我的第一个"真正的"编程语言.
Swift中蒙特卡罗模拟的最小工作版本将是这样的:
import Foundation
import Cocoa
var winner = 0
var j = 0
var i = 0
var chance = 0
var points = 0
for j=1;j<1000001;++j{
var ability = 500
var player1points = 0
for i=1;i<1000;++i{
chance = Int(arc4random_uniform(1001))
if chance<(ability-points) {++points}
else{points = points - 1}
}
if points > 0{++winner}
}
println(winner)
Run Code Online (Sandbox Code Playgroud)
代码可以直接粘贴到xcode 6.1中的命令行程序项目中
最内层的循环不能并行化,因为变量"points"的新值在下一个循环中使用.但最外面的只是运行最里面的模拟1000000次并计算结果,应该是并行化的理想候选者.
所以我的问题是如何使用GCD并行化最外层的for循环?
为标题道歉,但我正试图在我的水平之上做一些事情甚至让我解释它.
假设我有一个包含变量person,foodstuff和amount的表:
Person food Amount
Mike Butter 3
Mike Milk 4
Mike Chicken 2
Tim Milk 4
John Chicken 2
Run Code Online (Sandbox Code Playgroud)
通过在查询中将表连接到自身,我已设法创建一个列表,其中食物是新变量的基础,值是金额.上表将成为:
Person Butter Milk Chicken
Mike 3 4 2
Run Code Online (Sandbox Code Playgroud)
代码大约是:
Select
a.person,
b.amount as Butter,
c.amount as Milk,
d.amount as Chicken
from PersonFoodAmount a
inner join PersonFoodAmount b on a.person = b.person
inner join PersonFoodAmount c on a.person=c.person
where b.food='Butter'
and c.food='Milk'
and d.food='Chicken'
Run Code Online (Sandbox Code Playgroud)
现在,这给了迈克,因为他检查了所有的盒子.但我还需要部分匹配:
Person Butter Milk Chicken
Mike 3 4 2
Tim NULL 4 NULL
John NULL Null …Run Code Online (Sandbox Code Playgroud)