有的没的
1.rx580
mjj的老熟人,2025年依旧活跃在300元价位段,东大某些厂商据说还有16g的版本

性价比:★★★★★
门槛:★
可玩性:★★
推荐值:★★★
推荐理由:低价位能买到的卡里面最省心的

2.p106
rx580同时代的产物,矿卡的始作俑者,矿渣中的矿渣,580起码还搬板

性价比:★★★★★
门槛:★★★
可玩性:★★
推荐值:★★
推荐理由:100米还提啥要求?

3.rtx2080ti
实力源自22g,该有的都有,矿潮前夕的卡皇,可玩性不错

性价比:★★★
门槛:★
可玩性:★★★★★
推荐值:★★★
推荐理由:性价比前提是矿潮没被无良主人卖掉,魔改22g3k入手不推荐

4.tesla p4
220没上车未来也(可能)不会有了,平民最强刀卡,无论虚拟桌面还是编解码都很香

性价比:★
门槛:★★★
可玩性:★★
推荐值:★
推荐理由:不推荐,350吃顿好的不行?

5.tesla p40
玩AI当年一卡难求,700涨到3k大有580之势,没买一点也不后悔,大号1080ti

性价比:★
门槛:★★★
可玩性:★★★
推荐值:★
推荐理由:不推荐,看下面

6.tesla p100 sxm2
入手的垃圾佬心还痛不 v100的刀快不快?

性价比:★
门槛:★★★★
可玩性:★★★
推荐值:★
推荐理由:不推荐,看下面

7.titan v
1300入手也不亏,v100牙膏挤爆

性价比:★★★
门槛:★★
可玩性:★★★★
推荐值:★★★
推荐理由:这身皮你就说值不值

8.tesla t10
不到1400买16g显存+低精度,弥补了p100的遗憾,deepseek那会儿一度成为千元版本答案

性价比:★★★
门槛:★★★
可玩性:★★★★
推荐值:★★★
推荐理由:高贵的云游戏卡,驱动折腾起来有点麻(要)烦(命),性能也不如人意,啥都要兼顾(游戏+光追+AI)

9.MI50
镭7的完全版,从矿老板的仓库到小黄鱼热门只需要一个llama,不用怀疑这就是当前版本答案

性价比:★★★★★
门槛:★★★★
可玩性:★★★★
推荐值:★★★
推荐理由:32g不到8张毛爷爷就问你慌不慌,除了llama不要过分期待

10.rtx A3000M
什么都会一点,什么都差一点,超过1k都是对垃圾佬的侮辱

性价比:★★★
门槛:★
可玩性:★★★★
推荐值:★★★
推荐理由:省心,啥都能干一点,够了

11.tesla v100
垃圾佬拼好卡,性价比很高,可玩性也不错,需要大佬喂饭和一点耐心

性价比:★★★★
门槛:★★★★★
可玩性:★★★★★
推荐值:★★★★
推荐理由:东市买骏马,西市买鞍鞯,南市买辔头,北市买长鞭,小白入手切忌蛮干

12.gtx 1080ti
牙膏挤爆,老黄永远的耻辱,800块的东西,也就打打4060

性价比:★★★★
门槛:★
可玩性:★★
推荐值:★★★
推荐理由:活好当下,有一天算一天

#programming
之前做的快速阅卷的前端今天开始用了! 效率超级提升

感叹···

从2022年开始就像搞搞webdev 过去一年开始恶补js+html。。到现在为了满足工作和日常需求,已经写了10来个前端应用了。

前几年总觉得前端和我很遥远 可能因为搞嵌入式的不想踏出舒适圈的抗拒感吧

现在有了llm··才发现即使是静态前端也能玩出花来 很方便 (毕竟大家都装着浏览器)界面一做,数据在localstorage一存,这就一个小pwa应用了

现在llm可以帮忙写css,html也只记一记标签和属性就行,但是js还是得熟练拿捏的。(作为非专业人士 就先避开nuxt/vue啥的了)

那种需要输入数据或者展示结果的场合 python已经不是我的首选了··只有针对一些突发需求或者是定时执行的任务的时候才会用Python实现,或者是配合青龙使用

除了科学计算和开发资源没python那么丰富 js也算是有九头六臂了!除了前端 写个轻后端跑在CF worker或者vercel edge function上,配合KV或者R2,很办事儿!

不过,门槛低=可替代性强,论坛里看到太多小公司的前端失业了。总结为:虚拟环境自洽(开发环境可移植性强)、越开源的东西,越容易被llm替代。

#progamming
使用SourceTree来回退代码到某次提交

方法步骤
----

7 切换到sourceTree界面,鼠标选中将要回退到的那个历史提交记录

![](https://i-blog.csdnimg.cn/blog_migrate/876db60b87fdae9a40bb3410728a781c.png)

8 右键-》重置当前分支到此次提交

![](https://i-blog.csdnimg.cn/blog_migrate/e835d7e4248e42563b4cdcc8f1064f6a.png)

9 在弹窗中 使用模式选择 强行合并--丢弃所有改动过的工作副本,点击确定

![](https://i-blog.csdnimg.cn/blog_migrate/f9eb26303d3991d46d9fd64b02458d91.png)

10 等待重置完,可以看到本地仓库的develop分支已回退到 “提取 release分支的某次提交到 develop分支”提交。而且本地仓库落后远程仓库两个提交记录。

![](https://i-blog.csdnimg.cn/blog_migrate/8743d7b25002570aa37eafecdb01ae98.png)

11 依然是同样的操作。选中最新的提交历史记录右键-》重置当前分支到此次提交

![](https://i-blog.csdnimg.cn/blog_migrate/ea8eba594e8c68f8ba03b6d1df9f218c.png)

12 这次选的使用模式是软合并 – 保持所有本地改动,点击确定

 ![](https://i-blog.csdnimg.cn/blog_migrate/ae476fdd2c152400cdc21687799585b7.png)

13 等待重置完。发现本地仓库开发分支已和远程仓库开发分支同步。这个结果似乎看起来两次重置抵消了一样,代码版本没有发生任何的变化。实际并不是这样,这就是神奇之处,会让你恍然大悟的地方。

![](https://i-blog.csdnimg.cn/blog_migrate/8aba48eb1463d4261a7b1d63c7fff48b.png)

14 切换到文件状态,可以看到本地工作副本多了一个test1.txt的改动文件,而且改动文件的内容正好删除了 新增test1和新增test2两次提交所修改的内容。

![](https://i-blog.csdnimg.cn/blog_migrate/11b9e5a387322cc326a0cfbf7cc58104.png)

15 那么,剩下的操作只需将这个改动文件提交并推送到远程仓库,是不是就OK了?

下面尝试,提交并推送该改动文件。如下图,推送之后的效果。

![](https://i-blog.csdnimg.cn/blog_migrate/4a5265ea53a9d262b3070eacc6a893fe.png)

16 如下图,可以看出本地工作副本和远程仓库的 add test1 和 add test2内容都被回退掉了。也就是代码版本从内容上回退到了某个历史版本,但是提交历史记录并没有回退。在提交记录已经同步到远程分支情况下,Git只会增加提交历史记录,是不会回退或删除提交记录的。我们所说的回退都是指的回退内容。

![](https://i-blog.csdnimg.cn/blog_migrate/86c727236768edaf36e1717c901283d4.png)

注意事项
----

回退指的是内容的回退,而不是提交记录的回退

#programming
今天学会了vscode 快速切换copilot账户的方法。。。

那。。。copilot edit应该够用了

还没有用过cursor不知道和copilot差距有多大 但是cursor不够大方呀

#ai #programming
今天第一次打造了docker image, 通过 github action!

起因是之前用的ghmodelapi这个镜像没有arm的。

在容器内找到了他的dockerfile、程序源代码等,交给ai来写一个github action的workflow yaml. 因为github action支持arm架构的runner,所以这就太合适了。


最后编译的很棒。也push到了ghcr上. 那么至此,gh model balancer从chi迁移到本地.3了。

以前我不会写workflow yaml, 而迟迟阻止我用action,现在有了ai,用action就没有阻碍了。。

以前dockerfile我只能读不会写,现在有了ai,也没有阻碍了。。。


我现在还不知道ai到底是起到了正作用还是反作用。

让我可以尝试更多的事儿 但是我也变懒了


#ai #programming
https://deepwiki.com/search/pushplus-forktelegrambot-pytho_4e416c58-4e4e-42f8-b182-e8a96355ee39
—-



根据你的需求,你想要在现有的SGCC电力监控项目中添加Telegram Bot和企业微信机器人的推送支持。

## 当前推送系统分析

目前项目只支持Pushplus推送,推送逻辑位于`scripts/sensor_updator.py`的`balance_notify`方法中。 [1](#0-0) 当电费余额低于设定阈值时,系统会通过Pushplus发送通知。

## 需要修改的文件和位置

### 1. 环境变量配置文件

你需要在`example.env`文件中添加新的环境变量: [2](#0-1)

建议在现有的Pushplus配置后添加:
# Telegram Bot 配置
TG_BOT_TOKEN=your_bot_token
TG_USER_ID=your_user_id
TG_API_HOST=https://api.telegram.org  # 可选,自定义API地址
TG_PROXY_HOST=proxy_host  # 可选,代理主机
TG_PROXY_PORT=proxy_port  # 可选,代理端口
TG_PROXY_AUTH=user:pass   # 可选,代理认证

# 企业微信机器人配置
QYWX_KEY=your_webhook_key
QYWX_ORIGIN=https://qyapi.weixin.qq.com  # 可选,自定义API地址


### 2. 主配置加载逻辑

在`scripts/main.py`中,你需要在两个地方添加新的环境变量加载:

- Home Assistant Add-on模式(`options.json`): [3](#0-2)
- Docker模式(`.env`文件): [4](#0-3)

### 3. 推送逻辑修改

主要修改`scripts/sensor_updator.py`中的推送逻辑:

#### 在`init`方法中添加新的配置读取: [5](#0-4)

#### 修改`balance_notify`方法: [1](#0-0)

你需要将现有的单一Pushplus推送逻辑扩展为支持多种推送方式的逻辑。

## 推荐的实现方案

1. 创建推送工厂模式**:在`sensor_updator.py`中添加你提供的`wecom_bot`和`telegram_bot`函数
2. **修改`balance_notify`方法**:根据配置的环境变量决定使用哪种推送方式
3. **支持多推送并行**:可以同时启用多种推送方式

## 配置优先级

根据现有代码结构,配置加载的优先级是: [6](#0-5)
1. 如果存在`/data/options.json`(Home Assistant Add-on模式)
2. 否则使用环境变量(Docker模式)

你需要在两种配置方式中都添加对应的新环境变量支持。

**Notes


当前项目的推送功能集中在`SensorUpdator`类中,通过`RECHARGE_NOTIFY`环境变量控制是否启用推送。你的修改应该保持这个架构,只是扩展推送方式的选择。记得在`DataFetcher.fetch()`方法中,`SensorUpdator`实例会为每个用户ID调用推送检查。 [7](#0-6)

Wiki pages you might want to explore:
- [Overview (ARC-MX/sgcc_electricity_new)](/wiki/ARC-MX/sgcc_electricity_new#1)
- [Core Components (ARC-MX/sgcc_electricity_new)](/wiki/ARC-MX/sgcc_electricity_new#4)
才学习到了swap不仅仅是存在硬盘或者rom里的文件,也有可能是zram。

zram是在ram中划走一部分并且进行压缩。一般可以提供划走空间的1.5~2倍空间。所以是牺牲cpu性能扩展了内存。

看了一下armbian默认开的是zram,不是文件swap。默认会划走ram的50%

之前寻思着比较伤害rom,看来是我误解了。

一般是在/etc/default/armbian-zram-config来配置


#linux
Oec刷机的时候需要注意刷机的两个文件的rom地址
关于sgcc new项目的修改解析

https://deepwiki.com/search/_4a5e2320-f205-4630-9e97-805cb25614ca

是的,这个程序确实存在一个保持一致运行的主循环。 [1](#0-0) 

## 主循环实现

程序的主循环位于 main() 函数中,使用 schedule 库来管理定时任务: [2](#0-1) 

主循环的核心逻辑非常简单: [1](#0-0) 

这个无限循环每秒检查一次是否有待执行的定时任务,如果有就执行。

## 任务调度机制

程序设置了两个定时任务:
1. 在配置的 `JOB_START_TIME`(默认07:00)执行
2. 在该时间的12小时后再次执行 [3](#0-2) 

## 任务执行函数

实际的数据获取工作由 `run_task()` 函数处理,该函数包含重试机制: [4](#0-3) 

这个函数会调用 `DataFetcher.fetch()` 方法来执行实际的数据抓取工作。 [5](#0-4) 

## Notes

程序启动后会立即执行一次数据获取任务,然后进入主循环等待定时任务触发。这种设计确保了程序能够持续运行并按计划执行数据抓取任务,同时通过重试机制提高了系统的可靠性。

Wiki pages you might want to explore:
- [Overview (ARC-MX/sgcc_electricity_new)](/wiki/ARC-MX/sgcc_electricity_new#1)
- [Environment Variables (ARC-MX/sgcc_electricity_new)](/wiki/ARC-MX/sgcc_electricity_new#3.1)



是的,将这个项目改成单次运行非常容易!

## 需要修改的核心部分

主要需要修改 scripts/main.py 中的主循环逻辑。 [1](#1-0)  目前程序使用无限循环来保持运行,但对于青龙面板的单次执行,你只需要移除这个循环。

## 具体修改方案

### 1. 移除调度和主循环代码

删除或注释掉以下部分:
- 定时任务设置 [2](#1-1) 
- 主循环 [1](#1-0) 

### 2. 保留核心执行逻辑

保留这部分代码,它会立即执行一次数据获取: [3](#1-2) 

### 3. 修改后的 main() 函数结构

修改后的 main() 函数应该是:
1. 初始化配置和日志 [4](#1-3) 
2. 创建 DataFetcher 实例 [5](#1-4) 
3. 直接调用 run_task(fetcher) 执行一次数据获取
4. 程序结束

## 优势

这样修改后:
- 程序执行完成后会自动退出,适合青龙面板的 cron 任务
- 保留了所有数据获取逻辑 [6](#1-5) 
- 保留了重试机制 [7](#1-6) 
- 减少了资源占用,因为不需要常驻进程

## Notes

这个修改非常简单,主要是移除调度相关代码。所有的数据获取、Home Assistant 集成、数据库存储等核心功能都会保持不变。你只需要在青龙面板中设置合适的 cron 表达式来替代原来的 JOB_START_TIME 配置。

Wiki pages you might want to explore:
- [Overview (ARC-MX/sgcc_electricity_new)](/wiki/ARC-MX/sgcc_electricity_new#1)
- [Environment Variables (ARC-MX/sgcc_electricity_new)](/wiki/ARC-MX/sgcc_electricity_new#3.1)
armbian 关闭 swap:

1. 确认一下swapon --show,看一下 swapfile 位置,后面删掉
2. sudo swapoff -a
3. 去删掉 swapfile
4. 去/etc/default/armbian-zram-config 中,设置 swap=false

关掉 swap 对 emmc 好,armbian 默认开 zram,swapiness 还是 100,swap 优先级非常高。具体的参数可以看一下 armbian-zram-config 这个文件。


#linux #programming
最近国外的 doh dns 访问不了了。

暂时把 clash 配置的 dns 换成
- https://223.6.6.6/dns-query
- https://1.12.12.12/dns-query



#network
Back to Top