Monday, August 8, 2016

Today we continue our discussion of the  paper titled "Pelican: a  building block for exascale cold data storage". Pelican treats a group of disks as a single schedulable unit. Resource restrictions such as power consumption, vibrations and failure domains are expressed as constraints over these units.
With the help of resource constraints and scheduling units, Pelican aims to be better than its over provisioned counterpart racks using computations in software stacks.
We were discussing the evaluation of Pelican and listing out the metrics chosen. To compare the evaluations, a simulator was used in addition to the Pelican hardware rack and the simulator and the rack were cross validated. It was configured in such a way that the prototype Pelican rack hardware matched the simulator. Traditionally, simulating hard disk-based storage accurately is very hard due to the complexity of the mechanical hard drives and their complex control software that runs on the drive. We were discussing the completion time. The completion time increased linearly by the order of 3 for an increase by 64 times the number of requests. The simulator and the rack performed very much like each other. 
Another metric used was the average reject rate.  This measures the requests that are not serviced because the queues are full and the workload is higher than what Pelican can service. It represents the average fraction of requests rejected. In all the experiments, the average incoming rate is 8 requests per second because the NIC card is the bottleneck.
Pelican was also measured for throughput.
Throughput was the same between tge simulator and the rack. This gave more confidence on the results. For throughput, the impact of spinning up disks is small

#puzzle
There are 5 pirates and they have to split 100 gold coins between themselves. The pirates have seniority levels from A to E. The rules of distribution are : 
The most senior pirate proposes a distribution of coins.
All pirates vote on whether to accept the distribution.
If the distribution is accepted, the coins are disbursed and the game ends.
If not, the proposer is thrown and dies, and the next most senior pirate makes a new proposal to begin the system again.

In case of a tie vote the proposer can has the casting vote
Rules every pirates follows.
Every pirate wants to survive

Given survival, each pirate wants to maximize the number of gold coins he receives.
Solution : The answer is 98 coins.
This follows from a tail recursion
If only D and E are there, it will be a distribution of (100, 0) because D has a casting vote
If only C, D and E are there, it will be a distribution of (99,0,1) because C can get enough votes
If B, C, D and E are there, it will be a distribution of (99,0,1,0) because B can get enough votes
if A, B, C, D and E are there, it will be a distribution of (98, 0, 1, 0, 1) to get enough votes.
#codingexercise
Add two numbers without using arithmetic operators
// half adder
int Add (int x, int y)
{
while (y != 0)
{
    int carry = x & y;
    x = x ^ y;
    y = carry  << 1;
}
Return x
}
eg:
add (011, 101)
S, C
110 , 010
100, 100
000, 1000
1000, 000

Similarly,
int Subtract (int x, int y)
{
while (y != 0)
{
    int borrow = (~x)  & y;
    x = x ^ y;
    y = borrow << 1;
}
Return x
}

No comments:

Post a Comment