w***g 发帖数: 5958 | 1 他试了,说速度不快。但是速度不快这个说法太抽象,一个请求花几秒,
每秒能处理多少请求都没说,那个文件有多大也没说,计算是啥我似乎也
没看明白。导致速度慢的原因太多了。无从帮起。我怀疑读那个文件根本
不是bottleneck。 |
|
|
a****i 发帖数: 1182 | 3 照这个逻辑,你觉得弄个计数器就可以不跨DB卖联程票了?
计数器数据不还是从DB来的?
和读数据到内存来有什么大区别吗? |
|
p**2 发帖数: 613 | 4 选2
前端有啥麻烦的,反正就是用jq/angualrjs等读数据就是了。
#1 前后端无限scale,以后流量爆了,53/CF的能整的都给整上,前端都动不用动。
#2 以后增加前端,后端不用改
#3 用不用webapi都无所谓,自己手写restful也挺好。 |
|
w********m 发帖数: 1137 | 5 好像现在很多公司面试喜欢考这道题。
关键是异步。全部要异步,读数据,处理数据,入库都要异步。
哪一步抱死cpu,系统就完了。
windows里面没有epoll。转到linux稍微有点learning curve。
熟悉的话,一天之内搭到rest api应该没问题的。 |
|
J*****n 发帖数: 4859 | 6 我有几百个binary file,每个大概40mb左右,都是股票,期货数据。
我在做研究的时候,需要读这些数据,然后运算(called A)。每次我修改A然后重新
启动以后,就要重新从硬盘上读数据。
我想写一个程序B,打开时就读入相关的bin file保存在内存中,然后后台运行。每次A
重新启动要数据的时候,就通过B从内存中调。
这个怎么实现?
谢谢 |
|
J*****n 发帖数: 4859 | 7 我有几百个binary file,每个大概40mb左右,都是股票,期货数据。
我在做研究的时候,需要读这些数据,然后运算(called A)。每次我修改A然后重新
启动以后,就要重新从硬盘上读数据。
我想写一个程序B,打开时就读入相关的bin file保存在内存中,然后后台运行。每次A
重新启动要数据的时候,就通过B从内存中调。
这个怎么实现?
谢谢 |
|
m****s 发帖数: 79 | 8 这么简单吗?
处理中也是要读数据到内存里处理。
那么每次要读多少大小的数据到内存呢?
一行一行地读,速度很慢吧。
比如先读进500M内存,处理,接着读下面500M内存。
这个大小有什么讲究?
衔接过程中间有没有什么overhead? |
|
g****t 发帖数: 31659 | 9 可能会有看不见的OS控制的中断进来吧?
例如ADC读数据什么的。
他那几个省略号也可能再查一次quit什么的
: 把bihai的代码重写一下会看得清楚些。
: void worker(){
: while(true){
: // check quit flag
: if (quit)
: return;
: // start/continue the computation
: ...
: }
: }
|
|
x****u 发帖数: 44466 | 10 gpu只管运算,读数据加载数据都靠cpu,甚至是io,所以负载平衡很重要
既然是云你直接加虚拟cpu数怎么样? |
|
l**t 发帖数: 452 | 11 【 以下文字转载自 Programming 讨论区,原文如下 】
发信人: leot (leot), 信区: Programming
标 题: 请问excel的null是什么符号?
发信站: The unknown SPACE (Sat Jun 28 01:32:11 2003) WWW-POST
我要从一个MS Excel文件读数据。但是如何判断一个cell中的内容是不是null呢?
好像当这个cell的数据的format为data的时候,null表示该cell为空。
然而当该cell 的格式为其他的时候,如general,text,number...我的java程序就不认为
该cell为空。那这个时候,如何判断此cell 是否为空呢?
谢谢 |
|
l**t 发帖数: 452 | 12 【 以下文字转载自 Programming 讨论区,原文如下 】
发信人: leot (leot), 信区: Programming
标 题: 请问excel的null是什么符号?
发信站: The unknown SPACE (Sat Jun 28 01:32:11 2003) WWW-POST
我要从一个MS Excel文件读数据。但是如何判断一个cell中的内容是不是null呢?
好像当这个cell的数据的format为data的时候,null表示该cell为空。
然而当该cell 的格式为其他的时候,如general,text,number...我的java程序就不认为
该cell为空。那这个时候,如何判断此cell 是否为空呢?
谢谢 |
|
d**********t 发帖数: 20415 | 13 人很牛,也超级吊,和他一起吃过饭,他说招postdoc最重要是之前是不是productive
,和他领域是否相关不重要
他的talk也讲的很有激情,不像有的PI就是在那里读数据 |
|
S*M 发帖数: 10832 | 14 读数据不是问题啊,17万个点而已,毛毛雨啊
关键是怎么fit
你的原始数据是不是本身就是在一个grid上?
如果是的话,可以用spline fit
不过因为你是5-D,所以nontrivial,具体怎么code我也不知道
貌似matlab有这么个function,interpn
可以去研究一下这个到底是怎么搞得
另外fit potential surface的大杀器好像是neural network
不过code起来麻烦 |
|
s*******s 发帖数: 133 | 15 F77中从一个data file读数据出来,
想从第10行读到第50行,用什么格式?
read ......
format(10n ..?)
thanks |
|
p*******k 发帖数: 488 | 16 我目前正在做一个SUBPROJECT, 要求非常简单, 就是如快速地READ大的数据文件.主
PROJECT是一个大型模拟计算,中间回产生很多大的数据文件,每一步计算都要依赖上次
的计算结果.因此,我想要一个很有效的存储文件并快速的READ数据. MPI好象可以用,但
是又好象没有必要,因为并没有很多PROCESSES 间COMMUNICATION.不知道有没有其他的
开源软件可以达到这个目的.
目前PROJECT就是单机器上运行. 我的想法是利用网络,把一个大的数据文件分布到3-4
个机器上,然后同时读每个机器,那么数据读取的速度应该是大大加快.那么我应该使用
MPI-IO还是一个PVFS?
多谢不吝指教! |
|
|
|
|
p*******k 发帖数: 488 | 20 很新的东东吗? 要是遇到什么BUGS, 是不是可以很快GOOGLE到SOLUTIONS? :-)
我是绝对新手. 迄今为止, 我的基础就是CS那些接近理论的课程和低级的JAVA/C++编程
. 太新太复杂的东西对我都是灾难. 安装和CONFIGURE任何软件对我都是恶梦.:-(
谢谢你的建议. :-) |
|
F****r 发帖数: 345 | 21 多谢回复。
两个程序是一模一样的,包括产生随机数的state。在两台机器上产生的随机数也是一
样的,我检查过。我刚想了一下,很可能是估计的步骤不同引起的。
一台机器是workstation,能运行好几个matlab,但速度稍慢,所以我先simulate所有要
用的随机数,分割成几组,存好,然后打开好几个matlab分别运行读取各组数据进行估
计,最后把结果汇总在一起;另一台机器速度快,就直接产生数据并估计了。很可能是
matlab在workstation上存数据或是读数据的时候有精度的损失,造成结果不一样。除
此之外,真想不出外什么结果会不一样。 |
|
l********a 发帖数: 1154 | 22 几个解决办法
1.matlab写出txt的时候,开头第一行写行列个数,从第二行开始写数据.
c++读的时候先读第一行,得到row,col数,然后动态分配内存
2.先扫一遍文件,得到行,列数,然后动态分配,扫第二遍读数据(文件大的话扫2次很累)
3.应该是最简单的,用vector < vector >,等价于每行都是个变长数组,整个
矩阵是变长数组的变长数组.写代码最方便,边读取边添加,而且也可用[i][j]直接访问
元素 |
|
c*******x 发帖数: 438 | 23 一个LabVIEW控制的process, 两个analyzers读数据, 分别与各自的computer用
ethernet TCP/IP沟通读入数据. 现在想用LabVIEW 做real-time data logging, 并同
其他数据一同写入同一个csv文件中. 原来的想法是建两个OPC server. 后来发现
analyzers的两个manufacturers都support OPC, 但是都很不情愿, 有钱赚都不赚, 说
太麻烦云云. 反而向我推荐他们自己开发的免费软件, 说可以达到同样的目的. 其中一
个说是用.NET框架啥的. 另外一个我就不知道了. 请问要实现这OPC有那些硬件的要求?
要在LabVIEW中给那些数据tag可以不用OPC而用其他方法吗? 事实我也不太懂自己在问
啥, 太外行了...... |
|
s******u 发帖数: 247 | 24 读的数据长度总是2000个点,无论示波器的显示的点是1000还是2万,总是只能够显示
屏幕上最前面的那2000个点。如果要显示所有的点,请问怎么解决呢?
多谢。 |
|
k**f 发帖数: 372 | 25 What scope? How did you read? |
|
j***j 发帖数: 324 | 26 双击示波器,在打印旁边的选项是设参数的。
查一下那里面的data history 设置。 |
|
d*******d 发帖数: 3382 | 27 yes, need to play w/ the scope settings |
|
s******u 发帖数: 247 | 28 谢谢各位。我试试看。我的程序如下:
interfaceObj = instrfind('Type', 'gpib', 'BoardIndex', 0, 'PrimaryAddress',
7, 'Tag', '');
fclose(interfaceObj);
set(interfaceObj,'InputBufferSize',20e3);
set(interfaceObj,'OutputBufferSize',20e3);
fopen(interfaceObj);
deviceObj = icdevice('DPO7254.mdd', interfaceObj); % Tektronix oscilloscope
DPO7254
connect(deviceObj);
其中设置InputBufferSize, OutputBufferSize都不起作用。 |
|
|
d***a 发帖数: 13752 | 30 那个卡的驱动在PC上装好后,应该能看到一个虚拟COM口。
然后在PC上写程序,从那个虚拟COM口读数据进来。数据
格式在文档里应该有。也有可能,那个卡的package里
已经带了这个程序。
我没有真正用过那样的卡,但用过一个TI的单板机,写过
类似的数据桥接的程序。那个卡实际上就是一个专门做数据
relay的单板机。 |
|
r****y 发帖数: 1437 | 31
其实加减法都不大用,主要是开文件,读数据,关文件。
你们都在妖魔化米大叔...... |
|
c*******g 发帖数: 475 | 32 我把程序修改了一下
现在应该好用了, 至少读数据应该没问题了
%reverse engineering *.spa
clc
filename='c:\Documents and Settings\user
\My Documents\051109 sample B.SP
A';
fid=fopen(filename,'r');
% Find the points number
fseek(fid,hex2dec('234'),'bof');
Number_of_DataPoints=fread(fid,1,'int32');
%Find the maximum and minimum of Wavenumber (cm-1) range
fseek(fid,576,'bof');
Maximum_Wavenumber=fread(fid,1,'single');
Minimum_Wavenumber=fread(fid,1,'single');
Interval=(Maximum_Wavenumber-Minimum_Wavenumber)/(Number_of_DataPoints- |
|
r*******a 发帖数: 268 | 33 要用SAS做线性回归。比如说,现在有两个变量,Y和X,要用X表达Y。
现在X,Y都是140天的数据,每天有1500个公司给出数据。
所以有两个excel文件,140列,1500行。
我们要做的是对于每天,都给出相应的Y和X的回归方程。
然后我们实际上应该有140个方程。
现在最不知道怎么办的是怎么写SAS的语句,让它一次把这140次回归一下做完。。。。
问了统计系同学也没搞清楚。请大牛指点一下,如果写出全部语句比较麻烦,请指点一
下应该用什么思路或者什么函数之类的。。。
另外,还想问一下如何控制SAS输出结果的格式?因为我们还想对求出的140个回归方程
做分析。而SAS一般输出结果的格式显然不适合做进一步分析..
如果用其他统计软件方便做上面的操作,也请指教指教。
谢谢!:) |
|
L***6 发帖数: 8307 | 34 我操,别误导人家了,物理转quant,100个可能只有15个成功,完全看物理做的什么方向
转花街那种不少是做计算物理和理论高能的,这些人读phd成天在那边算圈图,编程解
高阶loop diagram,这些人去花街真是不用怎么费脑筋
lz这种情况应该是做实验的,而且应该还是非粒子方向的,就是材料和凝聚态那种,根
本不需要编程,也没有复杂数学,就是动手做,读数据,出一些图,这种背景转quant
我看不容易
其实物理里面实验方向,非高能方向,水平和生物化学的实验phd差不多,想转行,还
是从头学个编程,转cs比较好
lz目前的状态,还在误以为美国的金融或者mba硕士可以给奖学金,误以为金融是个文
科,是靠嘴忽悠就可以入行的,即使有很水的纯金融的方向,lz的水平完全可以进,但
就是要交钱买学位,不会有“奖学金”的哈哈 |
|
s*****9 发帖数: 43 | 35 很中肯,谢谢。你猜对了,我们就是搬砖一样,做做实验,读数据那种。
方向
quant |
|
f*******y 发帖数: 988 | 36 而且真正的HFT,就是latency sensitive的那种,基本上都尽量避免多线程和Socket编
程,数据
结构选择lock free的,I/O都是用non-block的去poll,API是bypass kernel从网卡直
接读数
据的
这些人主要干的事情比如对齐ES和SPY,所有的model就是一次乘法和减法,要多线程和
SOCKET来干
啥? |
|
r******m 发帖数: 369 | 37 数据可能上百G把,主要是读数据还有和database的connection非常慢,windows/unix
版本都用
过,都是没法忍受,启动都花半天时间,有那个时间还不如写C程序呢。 |
|
k***g 发帖数: 166 | 38 前几天面一家trading公司,在这个问题上卡壳了
他们出的题是:在exchange边上有20台server,exchange提供API,server连上去读数
据,要求low latency通信,问题:怎样设计通信协议?我说,既然是low latency,那
就用UDP吧。但人家好像不置可否的样子。回来后想了想,UDP不能保证可靠性,似乎也
不适合做交易。
请教一下大家,在这个行业是怎样做到low latency通信的呢? |
|
Z***e 发帖数: 2983 | 39 呵呵,明白了
期待有更智能的,哪些学CS的牛人赶快了
听说以前连自动写conference paper的程序都有,自动读数据的还没有出来 |
|
q**o 发帖数: 4111 | 40 查help,看到下面两条
1.SAS/ACCESS for PC Files
2.SAS/ACCESS for Relational Databases
两条的功能,方法和syntax好像都是一样的,唯一不同是1用pcfile和server名字,路径来
指定数据路径,2直接用oracle,db2之类来指定
举例说明,用libname statement去读oracle数据
1:libname mylib pcfiles server=*** prot=**** dsn=ORA9MS user=*** pwd=***
preserve_tab_names=yes;
2:libname mylib oracle user=*** password=*** path=*** schema=hrdept;
有区别吗?
还有一个疑问,同样是用pass-through facility去读数据
1.proc sql;
connect to oracle (user=*** password=*** validvarname=v6)
2.proc sql;
connect to syba |
|
A*****n 发帖数: 243 | 41 关于16.1.2,其实R也能读入非常复杂的input data,read.table只是最常用的而已。
用python读数据的时候, readlines 和 string.split是最常用的,而这个在R里面用
readLines和strsplit也可以做到,R也有一些正则表达式的功能。如果针对数据的具体
形式写函数,效果应该和用python写的预处理程序是一样的。 |
|
g*******y 发帖数: 380 | 42 not "Da niu", but a rookie for SAS.
If I understand your post correctly, you have two files:
Execl X:
Day1...........Day140 |
|
r*******a 发帖数: 268 | 43 呵呵非常感谢!
这个也是我一个朋友教我的!但是问题是excel文件列的长度是有限制的啊。好像是6万多
吧(excel 2003,因为SAS好像不支持excel 2007吧)。所以1500×140那就是3个六万。所
以最好得分成三个excel文件。
但是另外问题是我们要做的回归不仅仅是这一个,总共有6个变量的,而且还有好几个m
odel,不仅仅是Y=X。所以这样是很耗时的。而且就是分次做回归,不知道最后怎么把结
果输出成一个好的格式。因为我们最后要对这140个回归方程求平均,还有其他分析等等
。。
十分谢谢! |
|
q**j 发帖数: 10612 | 44 proc reg datat = yourdata outest = out;
by whatever;
model whatever;
run;
you can play with the "out" data set later.
万多
个m
把结
等等 |
|
|
q**j 发帖数: 10612 | 46 yes. you can save the output result into a sas data set and play with it wha
tever way you like in the future. if you have a lot of diferent models, you
might have to write a macro for that. not tricky at all. |
|
g*******y 发帖数: 380 | 47 you can manipulate data in SAS, such as merge, transpose,not necessarily do
it in excel then import into SAS.
万多
个m
把结
等等 |
|
g*******y 发帖数: 380 | 48 What "Daniu" told u is how to do regression and output the results.
Suppose you want do 140 regressions by data, then you use "by day" in
precious code.
"out" is the name of output file which contains the results of regression. |
|
r*******a 发帖数: 268 | 49 谢谢。那么在SAS里要进行那样的操作应该用什么方法呢?
do |
|
g*******y 发帖数: 380 | 50 import you data into SAS.
put a another post tell "daniu" how much files you have in SAS, what do they
look like? What's the final data structure you want? Then they may write
explicit code for you, otherwise, they can only tell you generall methods,
you have to explore it by yourself. |
|