注册 登录
主题 : 如何在iPhone/ipad/iPod Touch中使用NEON技术
级别: 天使

状态: 连续签到 - [7天]
UID: 5513
精华: 19
发帖: 90659
可可豆: 922081 CB
威望: 921946 点
在线时间: 5508(时)
注册时间: 2009-05-06
最后登录: 2019-09-16
0 楼:  发表于: 2010-07-20 01:45    发自: Web Page
来源于 iPhone类代码 分类

如何在iPhone/ipad/iPod Touch中使用NEON技术    (在iOS代码库中浏览本帖)

NEON技术是ARMv7架构中相对于Atom处理器,很有竞争力的一个技术。它支持了非常丰富的128位向量计算,实现了SIMD技术特征。

那么我们如何在Apple的iPhone3GS或更高版本;ipod Touch3代或更高版本以及iPad上使用NEON技术呢?

首先,你要准备好XCode3.2.3或更高版本。

然后,由于这个版本所采用的GCC编译器仍然最高为4.2,因此还没有支持NEON的内联汇编功能,但是阿弥陀佛,Apple所提供的ARM汇编器支持了这个特性。因此我们要使用NEON技术,只能直接手工写纯汇编代码才行。

我们在一个iPhone工程项目中,classes或Other source筛选器中添加新文件,选择.s汇编文件,名字任意取。

然后可以如此编辑此汇编文件:
复制代码
  1. .text  
  2. .align 4  
  3. .globl _neon_test  
  4. .arm
  5.   
  6. _neon_test:
  7.     vadd.i16    d0, d1, d2  
  8.     vmul.i32    q0, q2, q3  
  9.     vmul.s32    q1, q3, q4  
  10.     vmull.u16   q0, d0, d1  
  11.       
  12.     bx          lr  

在附件中,这个函数是在arm7.s中定义的。另外,是在HardwareKeynoteViewController.m中的- (IBAction)textFieldEditingDone:(id)sender方法中被引用。
这个附件是对ARM指令集的一些测试。
另外,目前NEON具体如何在iPhone中使用这个问题很多老外也在询问,呵呵。但是先被偶发掘了。

附件: HardwareKeynote.zip (23 K) 下载次数:339
新浪围脖地址:http://t.sina.com.cn/1181389417
CPU Dasher for OS X: https://itunes.apple.com/cn/app/cpu-dasher/id1013487510?mt=12

级别: 版主

状态: 连续签到 - [144天]
UID: 491
精华: 6
发帖: 1763
可可豆: 112160 CB
威望: 112807 点
在线时间: 8537(时)
注册时间: 2008-08-19
最后登录: 2019-05-19
1 楼:  发表于: 2010-07-20 05:37    发自: Web Page
强的一塌糊涂阿。。。

沙发
 Developer
------------------------------------------------------------
Η αγάπη ποτέ δεν αποτυγχάνει.
愛是永不止息。
Love never fails.

    --《圣经.新约》哥林多前书第13章
级别: 风云使者

状态: 连续签到 - [66天]
UID: 16914
精华: 2
发帖: 4413
可可豆: 37440 CB
威望: 41577 点
在线时间: 10672(时)
注册时间: 2010-04-06
最后登录: 2019-02-13
2 楼:  发表于: 2010-07-20 09:18    发自: Web Page
啥也不会,只能顶了。
级别: 圣骑士
UID: 19283
精华: 0
发帖: 391
可可豆: 3802 CB
威望: 3802 点
在线时间: 418(时)
注册时间: 2010-05-10
最后登录: 2016-09-10
3 楼:  发表于: 2010-07-20 10:19    发自: Web Page
来膜拜下....
级别: 骑士
UID: 12327
精华: 0
发帖: 270
可可豆: 2710 CB
威望: 2710 点
在线时间: 558(时)
注册时间: 2009-12-28
最后登录: 2012-07-18
4 楼:  发表于: 2010-07-20 15:56    发自: Web Page
我一直很敬佩写汇编的高人。。。
级别: 精灵王

状态: 连续签到 - [341天]
UID: 4020
精华: 0
发帖: 437
可可豆: 24891 CB
威望: 25992 点
在线时间: 3388(时)
注册时间: 2009-04-02
最后登录: 2018-08-21
5 楼:  发表于: 2010-07-20 17:25    发自: Web Page
太强大了
hardware都用上了
一直在努力,一直都觉得努力得还不够~~
www.etware.com
级别: 圣骑士

UID: 2228
精华: 4
发帖: 73
可可豆: 7020 CB
威望: 7020 点
在线时间: 501(时)
注册时间: 2009-02-16
最后登录: 2014-10-30
6 楼:  发表于: 2010-07-22 03:54    发自: Web Page
看来这篇文章也是LZ的?
http://apple4.us/2010/07/a-few-things-ios-developer-ought-to-know.html

多谢楼主提供这么宝贵的信息,如果没有楼主在中文圈推广,估计等到中文圈知道这个技术的时候,国外已经有大量成品出来了~(不了解现在是否已经有商业级软件出现?比如游戏啥的?)
[ 此帖被bobgreen在2010-07-22 04:04重新编辑 ]

级别: 天使

状态: 连续签到 - [7天]
UID: 5513
精华: 19
发帖: 90659
可可豆: 922081 CB
威望: 921946 点
在线时间: 5508(时)
注册时间: 2009-05-06
最后登录: 2019-09-16
7 楼:  发表于: 2010-07-22 10:19    发自: Web Page
引用
引用第6楼bobgreen于2010-07-22 03:54发表的  :
看来这篇文章也是LZ的?
http://apple4.us/2010/07/a-few-things-ios-developer-ought-to-know.html

多谢楼主提供这么宝贵的信息,如果没有楼主在中文圈推广,估计等到中文圈知道这个技术的时候,国外已经有大量成品出来了~(不了解现在是否已经有商业级软件出现?比如游戏啥的?)


呵呵,这篇不是偶写的。估计是老外写的,然后是国人翻译的。

新浪围脖地址:http://t.sina.com.cn/1181389417
CPU Dasher for OS X: https://itunes.apple.com/cn/app/cpu-dasher/id1013487510?mt=12

级别: 侠客

UID: 7798
精华: 0
发帖: 32
可可豆: 1051 CB
威望: 1051 点
在线时间: 446(时)
注册时间: 2009-08-13
最后登录: 2018-05-31
8 楼:  发表于: 2010-07-23 09:32    发自: Web Page
看不明白 沙发
级别: 骑士
UID: 11714
精华: 0
发帖: 164
可可豆: 1660 CB
威望: 1640 点
在线时间: 469(时)
注册时间: 2009-12-15
最后登录: 2018-09-03
9 楼:  发表于: 2010-07-23 22:56    发自: Web Page
收藏了。。

CocoaChina社区转载内容已尽可能注明出处,如未能核实来源或转发内容图片有权利瑕疵的,请及时联系社区进行修改或删除【联系方式QQ : 3442093904 邮箱:support@cocoachina.com】文章内容为作者独立观点,不代表CocoaChina社区立场。版权归原作者所有,如申请授权请联系作者,因文章侵权CocoaChina社区不承担任何法律及连带责任。

描述
快速回复

关注本帖(如果有新回复会站内信通知您)

发帖、回帖都会得到可观的积分奖励。查看论坛积分规则

按"Ctrl+Enter"直接提交
    顶部