blkio.weight使用感想

blkio.weight使用感想

根据尝试,发现设置blkio.weight并不会对写入产生很大的影响,其影响的主要是read的IO。
我分别设置了foo和bar两个cgoup,位于/sys/fs/cgroup/blkio/xxx/blkio.weight,分别设置blkio.weight为100和500

$ echo 500 >/sys/fs/cgroup/blkio/foo/blkio.weight
$ echo 100 >/sys/fs/cgroup/blkio/bar/blkio.weight

写入IO测试

启动两个从/dev/zero读取的进程,分别写入两个不同的文件

$ cgexec -g "blkio:foo" dd bs=1M count=4096 if=/dev/sda of=file1
$ cgexec -g "blkio:bar" dd bs=1M count=4096 if=/dev/sda of=file2

通过iotop我们可以看到这两个进程的写入速度并没有本质的区别,最后的输出验证了我的想法

file1: 4294967296 bytes (4.3 GB) copied, 88.5578 s, 48.5 MB/s
file2: 4294967296 bytes (4.3 GB) copied, 88.7628 s, 48.4 MB/s

读取IO测试

启动两个从刚刚创建的大文件读取的进程,分别写入/dev/null,因为需要防止文件系统的缓存干扰测试,我们需要先清空缓存

$ sync
$ echo 3 >/proc/sys/vm/drop_caches

像上面一样,需要用两个控制组进行读取的测试

$ cgexec -g "blkio:foo" dd bs=1M count=4096 if=file1 of=/dev/null
$ cgexec -g "blkio:bar" dd bs=1M count=4096 if=file2 of=/dev/null

再次通过iotop发现,两个进程每秒读的字节数虽然会不断变动,但是大致趋势还是维持在 1:5 左右,和设定的 weight 比例一致。

结论

我不禁要怀疑,难道blkio.weight只对读取要作用么?还需要进一步查资料进行判断

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在自然语言处理中,通常使用词向量来表示单词。词向量是一种将单词映射到向量空间中的数值向量的方法,它可以捕捉单词的语义和上下文信息。在深度学习模型中,词向量通常是通过嵌入矩阵(Embedding Matrix)来实现的。 在 PyTorch 中,nn.Embedding 可以用来实现嵌入矩阵,它的参数包括词典大小和嵌入维度。在模型的 forward 函数中,我们需要根据输入的单词序列获取对应的嵌入向量。这可以通过调用 nn.Embedding 的 forward 函数来实现。 在 nn.Embedding 中,emb.weight 表示嵌入矩阵,它的形状为 (num_embeddings, embedding_dim),其中 num_embeddings 表示词典的大小,embedding_dim 表示嵌入向量的维度。在 forward 函数中,我们可以通过调用 emb.weight[indexes] 来获取单词序列对应的嵌入向量。其中 indexes 是一个 LongTensor,形状为 (batch_size, seq_len),表示输入的单词序列。 举个例子,假设词典大小为 10000,嵌入向量维度为 300,输入的单词序列为一个 LongTensor,形状为 (batch_size, seq_len),则获取对应的嵌入向量的代码如下: ``` import torch.nn as nn embedding_dim = 300 vocab_size = 10000 batch_size = 32 seq_len = 20 emb = nn.Embedding(num_embeddings=vocab_size, embedding_dim=embedding_dim) inputs = torch.randint(low=0, high=vocab_size, size=(batch_size, seq_len)) embedding = emb.weight[inputs] ``` 上述代码中,emb.weight 表示嵌入矩阵,inputs 是输入的单词序列,embedding 是对应的嵌入向量,它的形状为 (batch_size, seq_len, embedding_dim)。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值