Date: Fri, 21 Apr 2023 14:30:30 +0200 From: Mario Marietto <marietto2008@gmail.com> To: Aryeh Friedman <aryeh.friedman@gmail.com> Cc: FreeBSD Mailing List <freebsd-hackers@freebsd.org>, FreeBSD Mailing List <freebsd-questions@freebsd.org>, Yuri Victorovich <yuri@freebsd.org> Subject: Re: Installing openAI's GPT-2 Ada AI Language Model Message-ID: <CA%2B1FSiiLEjNTXg5Nj-mxrV6n64gcSa0DXcu=U6a39Dz2fyQahA@mail.gmail.com> In-Reply-To: <CAGBxaXmnsAQwfeSjGT4K3M2oNvSTpXYfrErRt3UbMvxpCD4htw@mail.gmail.com> References: <CAGBxaXmhRLk9Lx_ZHeRdoN-K2fRLEhY3cBVtBymmAjd4bBh1OQ@mail.gmail.com> <CA%2B1FSihQ-f4uhiOjYH8Wo=AxFEkAKe3NRDJdopgT50J=_jY4fA@mail.gmail.com> <CAGBxaXnYojzQJqO62hkzUJvD2rzaNp%2Bem38FgCqVSBu%2BmkBi9A@mail.gmail.com> <CA%2B1FSijpiko%2B%2B%2BwJuXo2GVV6sz3yGVi7ig0X3037%2B1zE3n91hg@mail.gmail.com> <CAGBxaX=OcaHEZk3S7jQeYW64A_iRNTmJ%2Bab4U7h_hsrG%2BQqQPg@mail.gmail.com> <ZEEnZjzDCtR_ZG4P@graf.pompo.net> <CAGBxaXmU=Ja9EkoMyxQ0cNxYB4BeiktqQ3P64QcWg%2B=xijTiyQ@mail.gmail.com> <CA%2B1FSii6OOwi%2B%2Bau-_9ViU_SMZ%2BGbESG5H0McVTHQUwmMnOJGQ@mail.gmail.com> <CAGBxaXkhC--ZppimDFabEwPhesjAJmrziNZm753eoyjy1sWzqg@mail.gmail.com> <CA%2B1FSijsSSpCFeKeaOt4gR36BAZ4J8j4QSJRJa-VF-a=J9e2uw@mail.gmail.com> <CAGBxaXnEajP_NKdgDtreavm1Gz5jyLE8-jQBxM9ALX%2BQ9Cpidw@mail.gmail.com> <CA%2B1FSiiyg8An7HwZrJOd=cKh1%2BNC-FMzgaQNfiHP9fkwpgbAEg@mail.gmail.com> <CAGBxaXmnsAQwfeSjGT4K3M2oNvSTpXYfrErRt3UbMvxpCD4htw@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
--000000000000c36d1205f9d7d421 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable If you don't want to use the GPU,the commands should be more or less the following : sudo touch /usr/local/etc/rc.d/ubuntu && chmod +x /usr/local/etc/rc.d/ubunt= u # Make it have this content: #!/bin/sh # # PROVIDE: ubuntu # REQUIRE: archdep mountlate # KEYWORD: nojail # # This is a modified version of /etc/rc.d/linux # Based on the script by mrclksr: # https://github.com/mrclksr/linux-browser-installer/blob/main/rc.d/ubuntu.= in # . /etc/rc.subr name=3D"ubuntu" desc=3D"Enable Ubuntu chroot, and Linux ABI" rcvar=3D"ubuntu_enable" start_cmd=3D"${name}_start" stop_cmd=3D":" unmounted() { [ `stat -f "%d" "$1"` =3D=3D `stat -f "%d" "$1/.."` -a \ `stat -f "%i" "$1"` !=3D `stat -f "%i" "$1/.."` ] } ubuntu_start() { local _emul_path _tmpdir load_kld -e 'linux(aout|elf)' linux case `sysctl -n hw.machine_arch` in amd64) load_kld -e 'linux64elf' linux64 ;; esac if [ -x /compat/ubuntu/sbin/ldconfigDisabled ]; then _tmpdir=3D`mktemp -d -t linux-ldconfig` /compat/ubuntu/sbin/ldconfig -C ${_tmpdir}/ld.so.cache if ! cmp -s ${_tmpdir}/ld.so.cache /compat/ubuntu/etc/ld.so.cache; = then cat ${_tmpdir}/ld.so.cache > /compat/ubuntu/etc/ld.so.cache fi rm -rf ${_tmpdir} fi # Linux uses the pre-pts(4) tty naming scheme. load_kld pty # Handle unbranded ELF executables by defaulting to ELFOSABI_LINUX. if [ `sysctl -ni kern.elf64.fallback_brand` -eq "-1" ]; then sysctl kern.elf64.fallback_brand=3D3 > /dev/null fi if [ `sysctl -ni kern.elf32.fallback_brand` -eq "-1" ]; then sysctl kern.elf32.fallback_brand=3D3 > /dev/null fi sysctl compat.linux.emul_path=3D/compat/ubuntu _emul_path=3D"/compat/ubuntu" unmounted "${_emul_path}/dev" && (mount -o nocover -t devfs devfs "${_emul_path}/dev" || exit 1) unmounted "${_emul_path}/dev/fd" && (mount -o nocover,linrdlnk -t fdescfs fdescfs "${_emul_path}/dev/fd" || exit 1) unmounted "${_emul_path}/dev/shm" && (mount -o nocover,mode=3D1777 -t tmpfs tmpfs "${_emul_path}/dev/shm" || exit 1) unmounted "${_emul_path}/home" && (mount -t nullfs /home "${_emul_path}/home" || exit 1) unmounted "${_emul_path}/proc" && (mount -o nocover -t linprocfs linprocfs "${_emul_path}/proc" || exit 1) unmounted "${_emul_path}/sys" && (mount -o nocover -t linsysfs linsysfs "${_emul_path}/sys" || exit 1) unmounted "${_emul_path}/tmp" && (mount -t nullfs /tmp "${_emul_path}/tmp" || exit 1) unmounted /dev/fd && (mount -o nocover -t fdescfs fdescfs /dev/fd || ex= it 1) unmounted /proc && (mount -o nocover -t procfs procfs /proc || exit 1) true } load_rc_config $name run_rc_command "$1" sysrc ubuntu_enable=3DYES # Create necessary mount points for a working Linuxulator: mkdir -p {/compat/ubuntu/dev/fd,/compat/ubuntu/dev/shm,/compat/ubuntu/home,= /compat/ubuntu/tmp,/compat/ubuntu/proc,/compat/ubuntu/sys} # Start Ubuntu service: service ubuntu start # Install needed packages: pkg install debootstrap pulseaudio # Install Ubuntu 20.04 into /compat/ubuntu: debootstrap --arch=3Damd64 --no-check-gpg focal /compat/ubuntu # Restart Ubuntu service to make sure everything is properly mounted: service ubuntu restart # Fix broken symlink: cd /compat/ubuntu/lib64/ && rm ./ld-linux-x86-64.so.2 ; ln -s ../lib/x86_64-linux-gnu/ld-2.31.so ld-linux-x86-64.so.2 # Chroot into your Linux environment: chroot /compat/ubuntu /bin/bash # Set correct timezone inside your chroot: printf "%b\n" "0.0 0 0.0\n0\nUTC" > /etc/adjtime sudo dpkg-reconfigure tzdata # For some reason sudo is necessary here, otherwise it fails. # Fix APT package manager: printf "APT::Cache-Start 251658240;" > /etc/apt/apt.conf.d/00aptitude # Enable more repositories: printf "deb http://archive.ubuntu.com/ubuntu/ focal main restricted universe multiverse" > /etc/apt/sources.list # Install required programs: apt update ; apt install -y apt-transport-https curl fonts-symbola gnupg pulseaudio build-essential gcc gfortran # Exit out of chroot exit # Fix x86_64-linux-gnu libraries path between ubuntu and freebsd cp -r /compat/ubuntu/usr/lib/x86_64-linux-gnu /lib --> Installing PyTorch and your chatgpt github fork on FreeBSD # fetch https://gist.githubusercontent.com/shkhln/40ef290463e78fb2b0000c60f= 4ad797e/raw/f640983249607e38af405c95c457ce4afc85c608/uvm_ioctl_override.c # /compat/ubuntu/bin/gcc --sysroot=3D/compat/ubuntu -m64 -std=3Dc99 -Wall -ldl -fPIC -shared -o dummy-uvm.so uvm_ioctl_override.c # pkg install linux-miniconda-installer # miniconda-installer # bash # source /home/marietto/miniconda3/etc/profile.d/conda.sh # conda activate (base) # conda activate pytorch (pytorch) # conda activate (base) # conda activate (base) # git clone your chatgpt github fork On Fri, Apr 21, 2023 at 1:34=E2=80=AFPM Aryeh Friedman <aryeh.friedman@gmai= l.com> wrote: > On Fri, Apr 21, 2023 at 6:40=E2=80=AFAM Mario Marietto <marietto2008@gmai= l.com> > wrote: > > > > You don't need bhyve to make that,but only the Linuxulator. I don't > think the type of cpu will make any difference. I've used the Intel I9 cp= u. > I tried FreeBSD 13.1 and I haven't found problems. For sure using python > env is tricky,but if you have the thinkering attitude,you will have some > fun. > > I already have a VM allocated on it (the same host has 3 other VM's on > it). I guess that is one thing I missed was the linuxulator (the > linsuckslator is more like it) and as far tinkering goes it is fine to > a point but not when it has taken *DAYS* away from paying projects (I > am a freelancer). > > BTW I will be trying your specific command lines tomorrow (I must get > back to paid work). > > P.S. The point of this project is to start a new project called > babySpock that is a personal assistant for me and my programming > partner/wife in all but legal detail. babySpock will hopefully be > able to help with pair programming/design brainstorming, general > clerical office tasks, be a halfway decent conversation partner > (roughly on or near the level of chatGPT which inspired this project > in the first place in order to increase the amount of "context" that > it could store and to slice and dice context as needed to feed the > more expensive models just relevant context as well use multiple > models.... basically a DIY hobbyist AM (artificial mind with the final > goal being artificial mature minds [AMM] instead of AGI due to the > rule making paradox) lab that has to "earn its own way in life" (i.e. > if it is not useful it will likely die from misuse). > > > > > On Fri, Apr 21, 2023 at 12:26=E2=80=AFPM Aryeh Friedman < > aryeh.friedman@gmail.com> wrote: > >> > >> The more I am fighting with it in linux (only thing there is docs for) > >> the more obvious it just doesn't work on > >> > >> On Fri, Apr 21, 2023 at 6:19=E2=80=AFAM Mario Marietto <marietto2008@g= mail.com> > wrote: > >> > > >> > Can't you install pytorch using the linux miniconda installer like > below ? > >> > > >> > # fetch > https://gist.githubusercontent.com/shkhln/40ef290463e78fb2b0000c60f4ad797= e/raw/f640983249607e38af405c95c457ce4afc85c608/uvm_ioctl_override.c > >> > > >> > # /compat/ubuntu/bin/gcc --sysroot=3D/compat/ubuntu -m64 -std=3Dc99 = -Wall > -ldl -fPIC -shared -o dummy-uvm.so uvm_ioctl_override.c > >> > > >> > # pkg install linux-miniconda-installer > >> > # miniconda-installer > >> > # bash > >> > # source /home/marietto/miniconda3/etc/profile.d/conda.sh > >> > # conda activate > >> > > >> > (base) # conda activate pytorch > >> > > >> Will this work a bhyve on an AMD Ryzen 5 host? After playing with it > >> in several linux instances I always get stuck when it can't find a > >> compatible version > >> > >> -- > >> Aryeh M. Friedman, Lead Developer, http://www.PetiteCloud.org > > > > > > > > -- > > Mario. > > > > -- > Aryeh M. Friedman, Lead Developer, http://www.PetiteCloud.org > --=20 Mario. --000000000000c36d1205f9d7d421 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable <div dir=3D"ltr"><pre class=3D"gmail-_3GnarIQX9tD_qsgXkfSDz1"><code class= =3D"gmail-_34q3PgLsx9zIU5BiSOjFoM">If you don't want to use the GPU,the= commands should be more or less the following :<br><br><br>sudo touch /usr= /local/etc/rc.d/ubuntu && chmod +x /usr/local/etc/rc.d/ubuntu # Make it have this content: #!/bin/sh # # PROVIDE: ubuntu # REQUIRE: archdep mountlate # KEYWORD: nojail # # This is a modified version of /etc/rc.d/linux # Based on the script by mrclksr: # <a href=3D"https://github.com/mrclksr/linux-browser-installer/blob/main/r= c.d/ubuntu.in">https://github.com/mrclksr/linux-browser-installer/blob/main= /rc.d/ubuntu.in</a> # . /etc/rc.subr name=3D"ubuntu" desc=3D"Enable Ubuntu chroot, and Linux ABI" rcvar=3D"ubuntu_enable" start_cmd=3D"${name}_start" stop_cmd=3D":" unmounted() { [ `stat -f "%d" "$1"` =3D=3D `stat -f "%d"= ; "$1/.."` -a \ `stat -f "%i" "$1"` !=3D `stat -f "%i" = "$1/.."` ] } ubuntu_start() { local _emul_path _tmpdir load_kld -e 'linux(aout|elf)' linux case `sysctl -n hw.machine_arch` in amd64) load_kld -e 'linux64elf' linux64 ;; esac if [ -x /compat/ubuntu/sbin/ldconfigDisabled ]; then _tmpdir=3D`mktemp -d -t linux-ldconfig` /compat/ubuntu/sbin/ldconfig -C ${_tmpdir}/ld.so.cache if ! cmp -s ${_tmpdir}/ld.so.cache /compat/ubuntu/etc/ld.so.cache; = then cat ${_tmpdir}/ld.so.cache > /compat/ubuntu/etc/ld.so.cache fi rm -rf ${_tmpdir} fi # Linux uses the pre-pts(4) tty naming scheme. load_kld pty # Handle unbranded ELF executables by defaulting to ELFOSABI_LINUX. if [ `sysctl -ni kern.elf64.fallback_brand` -eq "-1" ]; then sysctl kern.elf64.fallback_brand=3D3 > /dev/null fi if [ `sysctl -ni kern.elf32.fallback_brand` -eq "-1" ]; then sysctl kern.elf32.fallback_brand=3D3 > /dev/null fi sysctl compat.linux.emul_path=3D/compat/ubuntu _emul_path=3D"/compat/ubuntu" unmounted "${_emul_path}/dev" && (mount -o nocover -t= devfs devfs "${_emul_path}/dev" || exit 1) unmounted "${_emul_path}/dev/fd" && (mount -o nocover= ,linrdlnk -t fdescfs fdescfs "${_emul_path}/dev/fd" || exit 1) unmounted "${_emul_path}/dev/shm" && (mount -o nocove= r,mode=3D1777 -t tmpfs tmpfs "${_emul_path}/dev/shm" || exit 1) unmounted "${_emul_path}/home" && (mount -t nullfs /h= ome "${_emul_path}/home" || exit 1) unmounted "${_emul_path}/proc" && (mount -o nocover -= t linprocfs linprocfs "${_emul_path}/proc" || exit 1) unmounted "${_emul_path}/sys" && (mount -o nocover -t= linsysfs linsysfs "${_emul_path}/sys" || exit 1) unmounted "${_emul_path}/tmp" && (mount -t nullfs /tm= p "${_emul_path}/tmp" || exit 1) unmounted /dev/fd && (mount -o nocover -t fdescfs fdescfs /dev/= fd || exit 1) unmounted /proc && (mount -o nocover -t procfs procfs /proc || = exit 1) true } load_rc_config $name run_rc_command "$1" sysrc ubuntu_enable=3DYES # Create necessary mount points for a working Linuxulator: mkdir -p {/compat/ubuntu/dev/fd,/compat/ubuntu/dev/shm,/compat/ubuntu/home,= /compat/ubuntu/tmp,/compat/ubuntu/proc,/compat/ubuntu/sys} # Start Ubuntu service: service ubuntu start # Install needed packages: pkg install debootstrap pulseaudio # Install Ubuntu 20.04 into /compat/ubuntu: debootstrap --arch=3Damd64 --no-check-gpg focal /compat/ubuntu # Restart Ubuntu service to make sure everything is properly mounted: service ubuntu restart # Fix broken symlink: cd /compat/ubuntu/lib64/ && rm ./ld-linux-x86-64.so.2 ; ln -s ../li= b/x86_64-linux-gnu/<a href=3D"http://ld-2.31.so">ld-2.31.so</a> ld-linux-x8= 6-64.so.2 # Chroot into your Linux environment: chroot /compat/ubuntu /bin/bash # Set correct timezone inside your chroot: printf "%b\n" "0.0 0 0.0\n0\nUTC" > /etc/adjtime sudo dpkg-reconfigure tzdata # For some reason sudo is necessary here, othe= rwise it fails. # Fix APT package manager: printf "APT::Cache-Start 251658240;" > /etc/apt/apt.conf.d/00a= ptitude # Enable more repositories: printf "deb <a href=3D"http://archive.ubuntu.com/ubuntu/">http://archi= ve.ubuntu.com/ubuntu/</a> focal main restricted universe multiverse" &= gt; /etc/apt/sources.list # Install required programs: <br>apt update ; apt install -y apt-transport-https curl fonts-symbola gnup= g pulseaudio build-essential gcc gfortran # Exit out of chroot exit # Fix x86_64-linux-gnu libraries path between ubuntu and freebsd cp -r /compat/ubuntu/usr/lib/x86_64-linux-gnu /lib </code></pre><p class=3D"gmail-_1qeIAgB0cPwnLhDF9XSiJM"><br></p><p class=3D= "gmail-_1qeIAgB0cPwnLhDF9XSiJM"></p><p class=3D"gmail-_1qeIAgB0cPwnLhDF9XSi= JM">--> Installing PyTorch and your chatgpt github fork on FreeBSD</p><p= class=3D"gmail-_1qeIAgB0cPwnLhDF9XSiJM"><br></p><pre class=3D"gmail-_3Gnar= IQX9tD_qsgXkfSDz1"><code class=3D"gmail-_34q3PgLsx9zIU5BiSOjFoM"># fetch <a= href=3D"https://gist.githubusercontent.com/shkhln/40ef290463e78fb2b0000c60= f4ad797e/raw/f640983249607e38af405c95c457ce4afc85c608/uvm_ioctl_override.c"= >https://gist.githubusercontent.com/shkhln/40ef290463e78fb2b0000c60f4ad797e= /raw/f640983249607e38af405c95c457ce4afc85c608/uvm_ioctl_override.c</a> # /compat/ubuntu/bin/gcc --sysroot=3D/compat/ubuntu -m64 -std=3Dc99 -Wall -= ldl -fPIC -shared -o dummy-uvm.so uvm_ioctl_override.c # pkg install linux-miniconda-installer # miniconda-installer # bash # source /home/marietto/miniconda3/etc/profile.d/conda.sh # conda activate (base) # conda activate pytorch (pytorch) # conda activate (base) # conda activate<br><br></code><code class=3D"gmail-_34q3PgLsx9zIU5B= iSOjFoM">(base) # git clone </code>your chatgpt github fork<code class=3D"g= mail-_34q3PgLsx9zIU5BiSOjFoM"> </code></pre></div><br><div class=3D"gmail_quote"><div dir=3D"ltr" class=3D= "gmail_attr">On Fri, Apr 21, 2023 at 1:34=E2=80=AFPM Aryeh Friedman <<a = href=3D"mailto:aryeh.friedman@gmail.com">aryeh.friedman@gmail.com</a>> w= rote:<br></div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0p= x 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On Fri, Ap= r 21, 2023 at 6:40=E2=80=AFAM Mario Marietto <<a href=3D"mailto:marietto= 2008@gmail.com" target=3D"_blank">marietto2008@gmail.com</a>> wrote:<br> ><br> > You don't need bhyve to make that,but only the Linuxulator. I don&= #39;t think the type of cpu will make any difference. I've used the Int= el I9 cpu. I tried FreeBSD 13.1 and I haven't found problems. For sure = using python env is tricky,but if you have the thinkering attitude,you will= have some fun.<br> <br> I already have a VM allocated on it (the same host has 3 other VM's on<= br> it).=C2=A0 =C2=A0I guess that is one thing I missed was the linuxulator (th= e<br> linsuckslator is more like it) and as far tinkering goes it is fine to<br> a point but not when it has taken *DAYS* away from paying projects (I<br> am a freelancer).<br> <br> BTW I will be trying your specific command lines tomorrow (I must get<br> back to paid work).<br> <br> P.S. The point of this project is to start a new project called<br> babySpock that is a personal assistant for me and my programming<br> partner/wife in all but legal detail.=C2=A0 babySpock will hopefully be<br> able to help with pair programming/design brainstorming, general<br> clerical office tasks, be a halfway decent conversation partner<br> (roughly on or near the level of chatGPT which inspired this project<br> in the first place in order to increase the amount of "context" t= hat<br> it could store and to slice and dice context as needed to feed the<br> more expensive models just relevant context as well use multiple<br> models.... basically a DIY hobbyist AM (artificial mind with the final<br> goal being artificial mature minds [AMM] instead of AGI due to the<br> rule making paradox) lab that has to "earn its own way in life" (= i.e.<br> if it is not useful it will likely die from misuse).<br> <br> ><br> > On Fri, Apr 21, 2023 at 12:26=E2=80=AFPM Aryeh Friedman <<a href=3D= "mailto:aryeh.friedman@gmail.com" target=3D"_blank">aryeh.friedman@gmail.co= m</a>> wrote:<br> >><br> >> The more I am fighting with it in linux (only thing there is docs = for)<br> >> the more obvious it just doesn't work on<br> >><br> >> On Fri, Apr 21, 2023 at 6:19=E2=80=AFAM Mario Marietto <<a href= =3D"mailto:marietto2008@gmail.com" target=3D"_blank">marietto2008@gmail.com= </a>> wrote:<br> >> ><br> >> > Can't you install pytorch using the linux miniconda insta= ller like below ?<br> >> ><br> >> > # fetch <a href=3D"https://gist.githubusercontent.com/shkhln/= 40ef290463e78fb2b0000c60f4ad797e/raw/f640983249607e38af405c95c457ce4afc85c6= 08/uvm_ioctl_override.c" rel=3D"noreferrer" target=3D"_blank">https://gist.= githubusercontent.com/shkhln/40ef290463e78fb2b0000c60f4ad797e/raw/f64098324= 9607e38af405c95c457ce4afc85c608/uvm_ioctl_override.c</a><br> >> ><br> >> > # /compat/ubuntu/bin/gcc --sysroot=3D/compat/ubuntu -m64 -std= =3Dc99 -Wall -ldl -fPIC -shared -o dummy-uvm.so uvm_ioctl_override.c<br> >> ><br> >> > # pkg install linux-miniconda-installer<br> >> > # miniconda-installer<br> >> > # bash<br> >> > # source /home/marietto/miniconda3/etc/profile.d/conda.sh<br> >> > # conda activate<br> >> ><br> >> > (base) # conda activate pytorch<br> >> ><br> >> Will this work a bhyve on an AMD Ryzen 5 host?=C2=A0 =C2=A0After p= laying with it<br> >> in several linux instances I always get stuck when it can't fi= nd a<br> >> compatible version<br> >><br> >> --<br> >> Aryeh M. Friedman, Lead Developer, <a href=3D"http://www.PetiteClo= ud.org" rel=3D"noreferrer" target=3D"_blank">http://www.PetiteCloud.org</a>= <br> ><br> ><br> ><br> > --<br> > Mario.<br> <br> <br> <br> -- <br> Aryeh M. Friedman, Lead Developer, <a href=3D"http://www.PetiteCloud.org" r= el=3D"noreferrer" target=3D"_blank">http://www.PetiteCloud.org</a><br> </blockquote></div><br clear=3D"all"><br><span class=3D"gmail_signature_pre= fix">-- </span><br><div dir=3D"ltr" class=3D"gmail_signature">Mario.<br></d= iv> --000000000000c36d1205f9d7d421--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CA%2B1FSiiLEjNTXg5Nj-mxrV6n64gcSa0DXcu=U6a39Dz2fyQahA>