#643 closed Feature Request (Rejected)
whole array operations
Reported by: | khimik | Owned by: | |
---|---|---|---|
Milestone: | Component: | AutoIt | |
Version: | Severity: | None | |
Keywords: | whole array | Cc: |
Description
I wrote an AutoIt script which reads a binary file (about 16000 data points), does some very simple maths (add, multiply) and writes it back. I used _WinAPI_ReadFile/_WinAPI_WriteFile. I noticed that it takes rather long time to do DllStructGetData/DllStructSetData and simple maths in a loop, I think it took about 200 ms for this loop on my pentium 4. By comparison, fortran (g95) is about 100 times faster.
Of course AutoIt has never been intended to do complex maths operations and should not be used for this purpose, but it just occurred to me that if efficient whole array operations (like add, multiply etc and also DllStructGetData and some other functions) were introduced, the speed of many scripts could increase significantly.
Please forgive my ignorance if this makes no sense.
Attachments (0)
Change History (3)
comment:1 Changed 16 years ago by TicketCleanup
- Version 3.2.12.0 deleted
comment:2 Changed 16 years ago by Valik
- Resolution set to Rejected
- Status changed from new to closed
Why are you using UDF's to read/write the files? Why not use the built-in functions which should be much faster?
Anyway, not likely to happen.
comment:3 Changed 16 years ago by khimik
Dear Valik: _WinAPI_ReadFile is only ca. 30% slower than FileRead. If you read float data in binary format written in little endian mode, you need to BitShift, and then it is faster to use _WinAPI_ReadFile.
Guidelines for posting comments:
- You cannot re-open a ticket but you may still leave a comment if you have additional information to add.
- In-depth discussions should take place on the forum.
For more information see the full version of the ticket guidelines here.
Automatic ticket cleanup.