跳至内容

Blogs

RTX 3090初上机,以及和2080Ti对比

等了一个月货,从JD到手了技嘉 3090 Gaming OC24G,选这个卡主要是因为有4年保修,之前是2080Ti Founders公版,直接花屏了。 简单测试了下,对比: 厚度大概是2080Ti公版的1.7倍,长度如图,所以机箱需要拆掉光驱/硬盘架。 插入上电,电源是850W够用: 总的来说,温度比2080Ti公版要低一些,CUDA满负荷运行5天温度稳定在70度左右,毕竟卡大不少。 用小米插座测量功率,总体运行在500W左右,带上我2显示器和2路由器等等,大概600W,室内可以当暖气使用,效果真的很好,又可以计算又可以免费取暖,赚翻。 噪音方面全开很响,低负载下我机箱风扇噪音远远大于显卡,机箱加了层HEPA过滤网,导致吵得很。好处是没灰,上面的2080Ti图片就是用了2年直接拿出来拍的,干净。 算力 如果要做深度学习或并行计算,记得上CUDA11,老版本CUDA10不支持3090。 我的机子还是老的PCIe3,总线速度主要影响Copy数据到显存的速度,我只有初始化时Copy一次,就没需求上PCIe4了。如果你用深度学习需要batch,那么上PCIe4是必要的。 测试了下RTX 3090的算力,对比2080Ti。使用Pytorch1.7+CUDA11,跑的是我自己的程序,虽然不具参考意义,但可以比较出2卡的差距,结果如下: 3090 2080Ti CPU 简单Mean 88 ms (34x) 144 ms (20x) 3 s (1x) 混合算法 184 ms (76x) 282 ms (50x) 14 s (1x)

更多 →

2020-11-12 02:19

自制CO2二氧化碳检测仪

这几天在玩嵌入系统Arduino,发现学起来很简单,就打算组个二氧化碳检测仪。主要因为PM2.5一直关窗,想要知道下房间氧气到底够不够,到底要装什么样的新风。 组装使用材料: 材料 价格RMB(含运费) Arduino Nano 兼容开发板 15 Logic Level Converter 5.5 DS-CO2-20 传感器 145 SSD1306 128x64 OLED 显示屏 14 3x7 双面万能版 5.14 电线 4 M2*15 螺丝柱 5 电烙铁用T12头自制的那种就行,价格只要170左右就能达到原版2000多的性能。 线路图 传感器通讯协议是3.3v的UART,偷懒用Level Converter转换下 代码 这里只贴简单的获取传感器数值的代码: #include <SoftwareSerial.h> #define rxPin 12 #define txPin 11 SoftwareSerial CO2_Serial(rxPin, txPin); const byte readCO2[] = {0x42, 0x4d, 0xe3, 0x00, 0x00, 0x01, 0x72}; //Command byte responses[12]; void setup() { CO2_Serial.begin(9600); } unsigned int GetCo2() { int valMultiplier = 1; while (!CO2_Serial.available()) { CO2_Serial.write(readCO2, 7); delay(1000); } CO2_Serial.setTimeout(2000); CO2_Serial.readBytes(responses, 12); int high = responses[4]; //high byte int low = responses[5]; //low byte unsigned int val = high * 256 + low; return val * valMultiplier; } void loop() { auto co2 = GetCo2(); draw_co2(co2); delay(1000); } 显示部分我用的u8g2库。为了增加渲染速度,只能渲染部分区域,所以我开了fullbuffer,结果直接用掉了92%的内存,这么看的话,可能换个库比较好。

更多 →

2020-09-25 18:31

简单和多元线性回归的公式与从头实现

本身就是非常短的公式,做为ESL的第一课,非常基础。 有很多库可以做这件事,但正好我最近开发中需要用GPU计算回归(可以加速非常多倍),顺便写一篇博客来测试网站的公式显示是否正常。 什么是线性回归 简单地说就是用线性方程来表示数据的趋势。 一元:$y=mx+b$ 多元:$y=m_1x_1+m_2x_2+…+b$ 你可以考虑成每个点都是相同质量的恒星,回归线就是放一根长长的棍子,在这个重力环境下最后平衡的位置。 简单一元线性回归公式 (Linear regression) Simple OLS regression 单独列出来是因为更直观和易于理解: m=σx,yσx2=E[(X−μ)(Y−ν)]E[(X−μ)2]m=\frac {\sigma_{x, y}} {\sigma^2_x}=\frac {E[(X-\mu)(Y-\nu)]} { E[(X-\mu)^2] }m=σx2​σx,y​​=E[(X−μ)2]E[(X−μ)(Y−ν)]​ 就是协方差除于x的方差,如何推导到此公式就省略不谈了,但你应该已经感受到了此公式的魅力。 然后b就是得出m后带入即可: b=yˉ−mxˉb=\bar{y} - m\bar{x}b=yˉ​−mxˉpyTorch代码实现 用pyTorch是为了GPU加速。现在假设我们有一个y是2018-02月的NVDA价格数据:

更多 →

2020-03-21 15:51

导出最终幻想15的截图到JPG

15照片功能挺有意思,比自己截图好,还有代入感,但照片却不是可直接读取的格式。 顺带一提FF15是代入感最好的FF,没有之一,唯一可惜的是后期他们显然没时间做第二张大地图了。 下面是批量导出的方法,首先照片的位置在存档目录下: C:\Users\xxx\Documents\My Games\FINAL FANTASY XV 在里面找snapshot目录 照片文件是SS后缀,然而其实是JPEG格式,但是文件头加了额外的信息比如拍照时间和地点等。 可以用代码去掉,下面是Python的转换代码: import glob files = glob.glob(r'C:\xxx\ff15\*.ss') for fn in files: with open(fn, 'rb') as in_file: with open(fn + '.jpg', 'wb') as out_file: out_file.write(in_file.read()[0x24:])

更多 →

2020-03-15 04:44

安装傲腾Optane内存加速过程的各种问题解决

买了个傲腾给游戏盘加速想试试,遇到了不少问题(坑)记录下。 1.需要末尾5MB的“未分配”空间 首先安装这东西要求系统盘末尾保留5MB的“未分配”空间,一般来说你右键点你最后一个磁盘卷,选压缩,输入5MB,就会留给你。 但我的win10安装时会在末尾留个不能动的oem空间,如图: 如果你希望给系统盘加速,那么你要想办法删除那个空间了,不知是否会有问题。 好在我给我要加速的游戏盘压缩个5MB空间就可以通过这步。 2.需切换SATA到RAID模式,造成启动无限转圈 如果你本来开的是AHCI模式,那么安装程序会改成RAID模式,然后你系统就无法启动了。 我尝试了以前改AHCI的办法企图通过这步,就是进入一次安全模式即可: 改回AHCI 启动系统,msconfig选安全引导:最小,重启 进入系统前BIOS改RIAD(我的叫Intel RST premium) 进入系统安全模式,并改回正常启动即可 我以为这样可以解决进入系统的问题,没想到win10有个大坑: 用微软账号并用PIN码登陆Win10的,千万别随便进安全模式!!! 为什么? 因为安全模式不支持Pin码登陆。 那么用微软账号的密码登陆? 是的,但我账号是随机生成的密码,且定期更新。 你忘记密码了! 不,因为一直Pin登陆,所以他不知道我改密码了,还是老的随机密码且不知道是哪一次的。如果有网络可以通过网络让他更新密码。 那就让它更新啊? 见证奇迹的时刻到了,最小安全引导没有网络….. …. … 死循环 解决办法: 启动PE,用PE的UEFI修复工具加载引导区,一般会加载到Z:\ 然后bcdedit /store Z:\efi\Microsoft\boot\BCD /deletevalue {defualt} safeboot 接下来我们还要解决AHCI转RAID的问题,我因为要加速的是副盘,我的做法是BIOS里,把我的主盘M2_1的RAID设为关闭即可。就在改RAID地方的下面。 启动傲腾显示0xA008002E,版本太旧或者找不到驱动程序的提示是驱动不对,这个提示很不友好,没告诉具体哪个。且官网上还说如果你是从微软商城安装的傲腾和储存管理套件,不需要另外安装驱动,然而他瞎说的,你还是要安装。 解决办法: 在官网,SetupOptaneMemory.exe的下面,下载f6flpy-x64.zip,右键iaStorAC.inf,安装 大功告成,终于启动上了。 顺便最后一提…. 现在买不到32G的傲腾,如果你能买到,请买32的,因为16G很多功能不能用,比如锁定和统计功能。

更多 →

2020-01-16 00:13