标签: data-processing

IO完成后的Windows线程切换延迟 - 微秒或毫秒

我试图确定IO操作完成时切换线程的大致时间延迟(Win 7,Vista,XP).

我(我想)知道的是:

a)线程上下文切换本身在计算上非常快.(通过速度非常快,我的意思是通常的方式下1毫秒,甚至在1us的-假设一个比较快,卸载机等)

b)循环时间片量子大约为10-15ms.

我似乎无法找到的信息是关于(高优先级)线程变为活动/信号的典型延迟时间 - 例如,通过同步磁盘写入完成 - 并且该线程实际上再次运行.

例如,我至少读过一个地方,所有非活动线程都保持睡眠状态,直到~10ms系统量程到期,然后(假设它们已准备就绪),它们几乎同步地重新激活.但在另一个地方,我读到线程完成I/O操作与激活/发信号并再次运行之间的延迟是以微秒为单位,而不是毫秒.

我的询问背景与从高速摄像机捕获和连续流写入SSD阵列的SSD有关,除非我可以在先前的写入完成后在1ms以内完成新的写入(如果在平均1/10ms),这将是有问题的.

任何有关此问题的信息都将非常受欢迎.

谢谢,大卫

windows data-processing thread-state

1
推荐指数
1
解决办法
884
查看次数

在Java中从rowset创建树的最佳方法

假设我有一个Java列表,如下所示:

[
    [A, AA, 10],
    [A, AB, 11],
    [B, BA, 20],
    [A, AA, 12],
]
Run Code Online (Sandbox Code Playgroud)

我想处理每一行来创建地图的地图,以便我可以解决每行中的最后一个值,如下所示:

{   
    A: { 
       AA: [10, 12]
       AB: [11]
    },
    B: {
       BA: [20]
    }
}
Run Code Online (Sandbox Code Playgroud)

通过这种方式我可以做如下调用:

for (int i : map.get("A").get("AA")) { ... }
Run Code Online (Sandbox Code Playgroud)

当然,我可以迭代列表并手动创建地图.然而,这是一段非常丑陋的代码,很难将它概括为3,4,5,...,n列.

是否有一些聪明的方式来处理这些列表?某种图书馆或其他我没想过的东西?

java dictionary list data-processing

1
推荐指数
1
解决办法
124
查看次数

如何将字符串与可能的错字匹配?

我将多个pdf转换为文本文件,并且我想搜索文件中可能存在的特定短语。我的问题是pdf和文本文件之间的转换不完美,因此有时文本中会出现错误(例如单词之间缺少空格; i,l,1之间的混淆;等等)

我想知道是否有任何常用的技术可以让我进行“软”搜索,例如,可以查看两个词之间的汉明距离。

if 'word' in sentence:
Run Code Online (Sandbox Code Playgroud)

if my_search('word',sentence, tolerance):
Run Code Online (Sandbox Code Playgroud)

python string data-processing

1
推荐指数
1
解决办法
3365
查看次数

使用 Scipy 的低通切比雪夫 I 型滤波器

我正在阅读一篇论文,试图重现论文的结果。在本文中,他们对原始数据使用低通切比雪夫 I 型滤波器。他们给出了这些参数。

采样频率= 32Hz,Fcut=0.25Hz,Apass=0.001dB,Astop=-100dB,Fstop=2Hz,滤波器阶数=5。我找到了一些材料帮助我理解这些参数

在此输入图像描述

但是当我看一下 scipy.signal.cheby1 时。该函数所需的参数不同。

cheby1(N, rp, Wn, btype='low', analog=False, output='ba')
Run Code Online (Sandbox Code Playgroud)

这里N:滤波器的阶数;btype:滤波器的类型,在我的例子中,它是“低通”;Analog=False,因为数据是采样的,所以是数字的;输出:指定输出的类型。但我不确定rp、Wn。

在文档中,它说:

rp :浮点 通带中允许低于单位增益的最大纹波。以分贝为单位指定,为正数。

Wn : array_like 给出临界频率的标量或长度为 2 的序列。对于 I 型滤波器,这是过渡带中增益首次降至 -rp 以下的点。对于数字滤波器,Wn 从 0 到 1 归一化,其中 1 是奈奎斯特频率,pi 弧度/样本。(因此,Wn 的单位是半周期/样本。)对于模拟滤波器,Wn 是角频率(例如rad/s)。

根据这个问题: How To apply a filter to a signal in python

我知道如何使用过滤器。但我不知道如何创建一个具有与上述相同参数的过滤器。我不知道如何转换这些参数并将它们提供给Scipy中的函数。

signal-processing numpy filter data-processing scipy

1
推荐指数
1
解决办法
6876
查看次数

如何使用 Numpy.polyfit 绘制趋势图

感谢用户 Eduard Ilyasov 几天前帮助我

现在我得到了一些结果,但我几乎不明白这些

我试图计算从 1979 年到 2016 年的温度趋势。

    #calculate trend
    ####numpy.ployfit
    nmon = nyr * 12
    tdum = MA.arange(0,nmon)
    ntimes, ny, nx = tempF.shape 
#ntimes is time, ny is latitude, nx is longitude 
print tempF.shape

trend = MA.zeros((ny,nx), dtype='2f')
#trend = MA.zeros((ny,nx),dtype=float)

print trend.shape

for y in range (0,ny):
    for x in range (0,nx):
        trend[y,x]= numpy.polyfit(tdum, tempF[:,y,x],1)

print trend.shape
print trend
Run Code Online (Sandbox Code Playgroud)

这些是结果:

(
(456, 241, 480)
(241, 480, 2)
(241, 480, 2)
[[[ 0.00854342 -1.94362879]
  [ 0.00854342 -1.94362879] …
Run Code Online (Sandbox Code Playgroud)

python numpy temperature data-processing trend

0
推荐指数
1
解决办法
2万
查看次数

什么是“ file_like_object”,什么是“ file”;pickle.load()和pickle.loads()

我正在弄清楚pickle.load()和之间的区别pickle.loads()。有人说pickle.load()处理的对象是“ file_like_object”,但是pickle.loads()对应于“ file object”。

python pickle data-processing

-1
推荐指数
1
解决办法
3735
查看次数

打印整行,当发现重复时

这是我输入的片段:

DGD3 SOL10
DGD53 SOL15
DGD100 SOL15
DGD92 SOL20
DGD41 SOL22
DGD62 SOL35
DGD13 SOL40
DGD13 SOL40
Run Code Online (Sandbox Code Playgroud)

我的预期输出

DGD53 SOL15
DGD100 SOL15
DGD13 SOL40
DGD13 SOL40
Run Code Online (Sandbox Code Playgroud)

在我的数据中,我有时会重复 SOL(不超过两次重复,而不是例如文件中某些 SOL 的三倍,但仅重复)。SOL 在我的第二列中($2)。因此,当我找到重复的 SOL($2)时,我需要一个打印整行(DGD 和 SOL)的程序。你可以帮帮我吗?

awk data-processing

-1
推荐指数
1
解决办法
135
查看次数