Mar. 13th, 2026

Поскольку у меня вот уже много лет крутится домашний сервер на Raspberry Pi 400 со всякими нужными, но мелкими вещами, я решил запустить на нем локальный LLM.

С точки зрения ресурсов, последний QWEN 3.5 с 2B параметрами запускается через llama.cpp превосходно из ящика в 4-битовой квантизации, в рабочем состоянии использует около 2 ГБ памяти (это и внутренние параметры, и 8-битовый KV-кэш, и история, ну и сама оболочка).

С точки зрения использования, позапрошлая модель QWEN меня уверяла разными историческими доводами, что Мадрид - столица Франции, так что я решил пробовать более технические вопросы, а именно, написать код на С, реверсирующий односвязанный список.

Процесс думания прошел отлично, когда дошли собственно до кода, то:

#include <stdio.h>

typedef
struct Node {
int data;
struct Node* next;
} Node;

Хорошо, конечно, но пока stdio не особо нужен.

Потом оно сгенерировало кучу функций "создать ноду", "добавить ноду в начало списка", "добавить ноду в конец списка", "напечатать список", ну и

// Reverse the linked list
void reverseList(Node* head) {
Node* prev =
NULL;
Node* current = head;
while (current != NULL) {
Node* temp = current;
// Store current pointer
current->next = prev; // Point current to previous
prev = current; // Move prev to current
current = temp->next; // Move temp to next
}
head = prev;
// Update head to the new first node
}


потом показало мне, как ситуация до и после на небольшом конкретном списке и пояснило сложность - ну в точности, как соискатель заученно следует по всем пунктам интервью.

Потом оно предложило переписать как

void reverseListIterative(Node* head) {
Node* prev =
NULL;
Node* current = head;
Node* nextNode =
NULL;
while (current != NULL) {
nextNode = current->next;
current->next = prev;
prev = current;
current = nextNode;
}
head = prev;
}




ну а напоследок начало заниматься улучшайзингом:

void reverseList(Node* head) {
Node* prev =
NULL;
Node* current = head;
Node* nextNode = NULL;
while (current != NULL) {
nextNode = current->next;
current->next =
NULL;
prev = current;
current = nextNode;
}
head = prev;
}


Спасибо, что хотя бы начало отдали обратно!

Profile

ticklish_frog

March 2026

S M T W T F S
1234567
89101112 1314
15161718192021
22232425262728
293031    

Style Credit

Expand Cut Tags

No cut tags
Page generated Mar. 16th, 2026 08:49 am
Powered by Dreamwidth Studios