Comments (6)
@Iceber 我测试了下,用上面的例子和iouring-go的库确实会阻塞住,但是我自己改造的uring库是可以执行成功的:
不知道这样测试是否符合预期?
from iouring-go.
当时对于这个问题的判断是因为只设置了 SQPOLL,忽视了 IOPOLL,所以没有正常运行,考虑到 Go 相比 C 来说比较特殊的就是他的 gmp 模型,没有深究就暂时感觉也许是这个问题引起的。
我也试了一下 SQPOLL 和 IOPOLL 同时开启后,的确可以正常运行,但是 IOPOLL 和 SQPOLL 应该是两个单独的功能,不太应该有很深的互相影响,而且在 C 中好像单独使用 SQPOLL 是没有问题的,可能还需要再研究一下。
@Cloudstriff 请教一下,对于 go 中必须同时开启 SQPOLL + IOPOLL 有什么思路吗
from iouring-go.
@Iceber 你好,我这边对Go程序的实际测试,只开启SQPOLL或者IOPOLL都是能work的,无论nvme设备io_poll是否开启,都能正常提交和收割IO结果。只是设备io_poll打开时,走poll模式相比中断请求整体时延会更低。但没有遇到你说的只设置SQPOLL无法正常运行的问题
from iouring-go.
@Cloudstriff 我的测试方法是修改 https://github.com/Iceber/iouring-go/tree/main/examples/mv,开启 SQPOLL,你的测试方法是什么呢,你的环境可以试一下修改 mv ,观察是否可以正常运行吗
from iouring-go.
@Iceber 我这边是用的向量读readv直接操作nvme设备,没有试过mv操作是否可行,我试下
from iouring-go.
注意到 mv 执行时使用的不是 ./mv
,是否是使用了 PATH 中的 mv 命令呢
from iouring-go.
Related Issues (14)
- Suspicious lock-unlock HOT 1
- The go race detector reports a few errors HOT 1
- Confusion With multiple go routines HOT 2
- Size of cq could be wrong (?) HOT 2
- panic: iouring_setup: function not implemented HOT 7
- demo for performance advantage
- Propose IORING_SETUP_SQE128 and IORING_SETUP_CQE32 HOT 2
- 可以一起开发维护这个项目吗? HOT 3
- 操作系统内核>=5.6 , 为什么? iouring 5.1就支持了吧 HOT 1
- WithSQPoll() causes request to never return on file reads
- Slower reads using iouring than os for ReadFile type operations at all file sizes HOT 3
- 是否支持 ReadAt 操作? HOT 2
- Failed To Init IOURing: iouring_setup: cannot allocate memory HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from iouring-go.