Show newer

看到豆瓣和微博上有人说比特币,深以为然:

"人类真的很见识短,总是搞眼前看得见利益的事情,就比如说网络挖矿,浪费全球算力和电力,真的很短视,一个智慧物种走到今天,全球都这副鬼样子,每次玩末日题材游戏都觉得这就是明天的事。纪录片好吧。就不提仰望天空了,关心一下身边的物种,爱护一下环境都么得兴趣,觉得这是有病。不灭绝就见鬼了。"(游佐中)

"最近几十年最荒唐、最神经病、最弱智的技术及产业,现年总耗能高达128 TWh,占世界总发电量的0.6%....从业者脸一翻也好意思谈节能减排,比如马斯克."(远离巫医药)

除了极高的碳足迹,现在芯片/显卡短缺,和人们对比特币以太币的狂热也脱不了干系。
finance.yahoo.com/news/bitcoin

"挖比特币这种狗事情到底有什么价值?一种生产行为与社会经济脱节,既没多少工作岗位也不创造经济效益更不创造实体价值没有发明创新,除了浪费电和割韭菜搞杀猪接盘算加密数据垃圾之外的活动有什么屁用?为了这浪费电的破事把全球显卡硬盘都炒到理财断货,真正用显卡硬盘工作搞创作的人和用显卡硬盘玩游戏休闲的用户想买都买不了。"(鶴九Tsuruku )

Show thread

Learned about Chia Coin, and... f*ck you miners.

I think putting too much compute power into a blockchain is a huge waste, there are lots of examples here. Blockchain is a good idea, but I think Consortium Blockchain has more (power) efficiency than public chain.

Nowadays GPU price has already blown my mind, now hard disk even be able to mining? My local seller shows that Samsung's EVO 970 Plus 1T has already increased 16% of its original price.

Public chain is a good idea, and can be used in a proper way, but since mining gives miner rewards, there are always some people want to earn coins mainly in this way, rather than normal use.

Blockchain might be a influential technology, but could those developers please try to leave along with regulars PC gears and turned to some specific hardware? Nvidia might have a right step(by limiting gaming cards hashing performance to prevent mining).

@Candinya
从CPU到显卡再到ASIC,现在竟然轮到硬盘了。矿工们如蝗虫一般,所到之处祸害的寸草不生。今年游戏显卡的价格真的只能远处观瞧了,明年怕不是一块西数蓝盘也都得远处观瞧了

@KirisameUkiyo@nya.one
粗略的看完了(

感觉有点复杂(可能是让联盟链给惯的)。我觉得如果是这种功能的话,中心化实现可能会更方便一些,但去中心化的实现会更有说服力(避免陷入需要证明平台没有和某一方勾结一起的境地),我更偏向去中心化的实现。

去中心化的实现更注重协议。作为一个节点,我如何向别人发行WAC(作为一种有时效性的商品,有效期、我抵押的金额、对作品完成度的约定、发行WAC的总数量);收到别人的WAC后我如何购买(我如何知道WAC还剩多少、别人已经买了多少,如何验证一个WAC发行是否有效);我作为作者,如何履行自己发行的WAC(通知其他节点,WAC有新的状态,可能是新的完成度等信息);我作为网络的参与者(或读者),如何认同/判定WAC被履行(作者按期更新)或被违约(作者咕咕咕了),即在某一时刻对WAC中涉及的资产进行处置,归还作者or赔偿读者,并和其他节点达成共识。

另外由于作者与读者之间并不是一一对等的关系,怎么防止读者联合起来搞作者(参见微博某一鲜肉粉丝爆破某圈子的行为),虽然有独立的鉴定机构,但这个机构的引入就产生的一个中心化的角色:如果人人都能参与,势必会有多数人操纵的风险;但如果由特定人参与鉴定,那么就会引发网络中信任的问题。虽然说公正不应该由区块链来保证,但通过某种手段来促进公正应该算是锦上添花的东西。一个简单粗暴的解决方式就是由开发者团队通过抵押证明做到类似平台的角色,或者就放任网络进行多数人共识。

至于技术上的实现嘛,我确实没搞过公开链,所以技术上可能没法提供帮助(但好在我能学

不知道以上内容有没有帮到你(

@KirisameUkiyo@nya.one
找到了一个链接,我果然理解错了(

等我再细看看

@KirisameUkiyo@nya.one
没太看懂那个币的用途(是我太菜了orz

如果是面向艺术创作者的作品交易的话,我理解的应该是更偏向于版权交易,那个的话我上个月学校实验室跟某企业合作的项目就是做的这个。只不过那个是利用联盟链,链的参与者也基本都是版权行业的大型企业和国家有关部门,那个更侧重于利用区块链存储交易凭证,交易过程还是利用法币。

如果要在公开链上交易作品的话,我觉得最现实的问题在于反盗版,这个不考虑周全的话,很容易被各大ISP或某些公司起诉,造成DMCA take down的局面。其次是如何保证作品的唯一性,由于区块链不具有中心化的数据库,所以必须通过协议来保证每个节点能够避免出售已经出售过的东西(相关场景:A想买断B的画,但B卖给A之后又卖给别人)。交易记录可以直接附带在账本上,但交易物品本身如何界定,直接用hash的话有相撞的可能性,数字签名可能更合适一些,但数字签名要求密钥对,大家拥有公钥才能验证签名的有效性,于是公钥的去中心管理可能也会有问题。如果使用抵押证明来做,那艺术创作者售卖作品前必须抵押一部分代币来证明自己是可信的,这有可能会成为一个门槛。

我觉得可以先尝试利用已有的区块链框架写个demo看看,主要注重最核心的功能,比如过作品交易什么的。然后看看哪些地方是先有区块链不足之处,在此基础上加以改进得到自己的区块链变种(也就是新的币种)。公开链和联盟链最大的不同在于公开链依托代币的交易来实现功能,而联盟链本身已经是一个相对可信/可控的环境,功能实现可以更加注重逻辑而忽视交易部分。

@KirisameUkiyo@nya.one
智能合约建议避开Solidity,开发半小时调试三个月(

@KirisameUkiyo@nya.one

技术上能胜任,工资过得去,应该能吧(

I'm not sure why but I can definitely tell that JOCL is not a simple one to one OpenCL binging, it must dose some optimization somehow.

I rewrite the code from LWJGL's OpenCL to JOCL, and my timing result is here:

LWJGL's OpenCL:
320ms consumed by GPU
80ms for GPU computing and retrieving data back
605ms for CPU computing

JOCL's OpenCL:
157ms consumed by GPU
39ms for GPU computing and retrieving data back
611ms for CPU computing

With the same amount of data and exactly the same kernel, CPU time is not change that much, but GPU time is a big change.

LWJGL code: github.com/hurui200320/AntSimu

JOCL code: github.com/hurui200320/AntSimu

That's amazing.

I suddenly realized that for my purposes, I can actually get rid of lwjgl and turn to JOCL or Aparapi's side. I want to simulate something and represent them as a pixel based picture and OpenGL is not that good for pixel drawing. I think any Java 2D graphic library will fit my needs.

That's a good news. Which I can get rid of LWJGL's OpenCL binding and turn to more object oriented apis.

Finally get through OpenCL's Hello World in Kotlin. Computing 3 million times sin and cos using GPU, total time is 456ms, 105ms is used to compute and read result back to CPU. On the other hand, CPU takes whole 891ms to compute cos and sin. Which I guess it's more convinced for me to just say "GPU is good for parallel computing". The result is more vivid than sentences.

After doing this, I though LWJGL's document on OpenCL is really bad. What all I referenced are Java test codes and C++ codes. And I rely on my experience a lot to debug it. It looks like JOCL's binding is more object oriented and more user friendly. But LWJGL is offering a integrated package of OpenGL, GLFW and OpenCL binding, which I guess I have to stick with it for now.

Besides auto converting Java bytecode to OpenCL kernel, Aparapi seems much easier to get start with. Without dealing a lot of data copying and buffer creating things, life is much simpler.

I might write a blog(in Chinese of course, since I'm a Chinese, maybe I'll commit this program to LWJGL as a OpenCL HelloWorld) to describe where you should take a good care with LWJGL's OpenCL binding, where I actually crash the JVM by doing it wrong. (BTW, using println to locate the crash point is way faster than step through XD)

@freemo OK, but I still want to get my hands on raw OpenCL binding first just for having a general idea on how it's working. Having some knowledge about underlaying logic would always be useful for debugging(I guess).

@freemo Wow, that's really cool. I heart that library today and it's really for people who like me thinking "C is too much for me". BTW I'm using JDK11 and Kotlin mainly, so if this java version is supported, I'll have a try. Thanks!

Learned a lot about general computing on GPU via a youtube video.

Besides OpenGL compute shader, I'd prefer using OpenCL to update tons of units concurrently. I'll give it a try, but it seems like LWJGL's OpenCL binding is not well documented and only a few examples are given. Maybe I'll go further deeper in it.

youtube.com/watch?v=BjdYRtL6qj

@overflowcat

用明文的感觉存储效率好差

但是兼容性会更高一些,万一哪天发现了新的核糖核酸,编码不会变得支离破碎(就像现在的Unicode那样),直接加对应的字母就行了(

@freemo
Besides sushi, sashimi also worth a try. As a Chinese people, I found myself pretty enjoy Japanese foods.

Show older
CleverLibre Social

CleverLibre Social is an inclusive social instance for open discussion, learning, and community.
All cultures welcome.
Hate speech and harassment strictly forbidden.